黑马程序员_Windows窗体应用程序中数据导入数据库

来源:互联网 发布:怎么查自己网贷大数据 编辑:程序博客网 时间:2024/06/03 09:04
if (ofdimport.ShowDialog() != DialogResult.OK)            {                return;            }            using (FileStream filestream = File.OpenRead(ofdimport.FileName))            {                using (StreamReader streamReader = new StreamReader(filestream))                {                    using (SqlConnection conn = new SqlConnection(@"Data Source=.\sqlexpress;AttachDBFilename=|DataDirectory|\Database1.mdf;Integrated Security=true;User Instance=true"))                    //创建连接是非常耗时的,因此尽量不要每次操作都创建连接                    {                        conn.Open();                        using (SqlCommand cmd = conn.CreateCommand())                        {                            cmd.CommandText = "insert into T_Persons(name,age) values(@name,@age)";                            string line = null;                            while ((line = streamReader.ReadLine()) != null)                            {                                string[] strs = line.Split('|');                                string name = strs[0];                                int age = Convert.ToInt32(strs[1]);                                cmd.Parameters.Clear();    //参数不能重复添加,在while中一直用的就是一个sqlcommand                                cmd.Parameters.Add(new SqlParameter("Name", name));                                cmd.Parameters.Add(new SqlParameter("age", age));                                cmd.ExecuteNonQuery();                            }                        }                    }                }            }            MessageBox.Show("导入成功");            /*//建议采取上面的方面,此方法比较耗时            if (ofdimport.ShowDialog() == DialogResult.OK)            {                using(FileStream filestream=File.OpenRead(ofdimport.FileName))                {                    using (StreamReader streamReader = new StreamReader(filestream))                    {                        string line = null;                        while ((line = streamReader.ReadLine()) != null)                        {                            string[] strs = line.Split('|');                            string name = strs[0];                            int age = Convert.ToInt32(strs[1]);                            using (SqlConnection conn = new SqlConnection(@"Data Source=.\sqlexpress;AttachDBFilename=|DataDirectory|\Database1.mdf;Integrated Security=true;User Instance=false"))                            {                                conn.Open();                                using (SqlCommand cmd = conn.CreateCommand())                                {                                    cmd.CommandText = "insert into T_Persons(name,age) values(@name,@age)";                                    cmd.Parameters.Add(new SqlParameter("Name", name));                                    cmd.Parameters.Add(new SqlParameter("age", age));                                    cmd.ExecuteNonQuery();                                }                            }                        }                    }                }                MessageBox.Show("导入成功");            }*/

原创粉丝点击