黑马程序员技术交流社区

标题: 【以解决】关于数据导入,ADO.Net第十课,数据导入不了 [打印本页]

作者: 李玮    时间: 2012-6-4 16:26
标题: 【以解决】关于数据导入,ADO.Net第十课,数据导入不了
本帖最后由 李玮 于 2012-6-4 17:04 编辑

下面是代码,运行后,数据导入对话框弹出,但是查看数据并没用导入

我是建的数据库名:  Shujvdaoru.mdf              表名:TableUser

被插数据:
tom|30
jerry|20
kucy|25

我的代码:

   private void button1_Click(object sender, EventArgs e)
        {

      
            if (odfimport.ShowDialog() == DialogResult.OK)
            {
                using (FileStream fileStream = File.OpenRead(odfimport.FileName))
                {
                    using (StreamReader reader = new StreamReader(fileStream))
                    {
                        string line = null;
                        while ((line = reader.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|\Shujvdaoru.mdf;Integrated Security=True;User Instance=True
"))
                            {
                                conn.Open();
                                using (SqlCommand cmd = conn.CreateCommand())
                                {
                                    cmd.CommandText = "insert into TableUser (Name,Age) values (@Name,@Age)";
                                    cmd.Parameters.Add(new SqlParameter("Name", name));
                                    cmd.Parameters.Add(new SqlParameter("Age", age));
                                    cmd.ExecuteNonQuery();
                                }
                            }
                        }
                    }
                }
               
            MessageBox.Show("导入成功!");
        }

        }




作者: 李玮    时间: 2012-6-4 16:27
求救啊{:soso_e135:}
作者: 董超    时间: 2012-6-4 16:57
那一段“神奇的代码”你加了吗??
           string dataDir = AppDomain.CurrentDomain.BaseDirectory;
            if (dataDir.EndsWith(@"\bin\Debug\")
                || dataDir.EndsWith(@"\bin\Release\"))
            {
                dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
                AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);
            }
作者: 李玮    时间: 2012-6-4 17:01
董超 发表于 2012-6-4 16:57
那一段“神奇的代码”你加了吗??
           string dataDir = AppDomain.CurrentDomain.BaseDirectory;
...

:'(神人啊 你不说我真忘了:@ 我死的心都有了

大哥给力:curse:
作者: 朱亮辉    时间: 2012-6-4 18:37
你确认加上神奇代码就能运行了吗?,你这两句代码有问题吧?
cmd.Parameters.Add(new SqlParameter("Name", name));
cmd.Parameters.Add(new SqlParameter("Age", age));
改为
cmd.Parameters.Add(new SqlParameter("@Name", name));
cmd.Parameters.Add(new SqlParameter("@Age", age));
作者: 高宜    时间: 2012-6-4 19:35
朱亮辉 发表于 2012-6-4 18:37
你确认加上神奇代码就能运行了吗?,你这两句代码有问题吧?
cmd.Parameters.Add(new SqlParameter("Name" ...

这个倒是没必要,加@和不加都能运行
作者: 李玮    时间: 2012-6-4 20:03
朱亮辉 发表于 2012-6-4 18:37
你确认加上神奇代码就能运行了吗?,你这两句代码有问题吧?
cmd.Parameters.Add(new SqlParameter("Name" ...

不改肯定对  老师也是
cmd.Parameters.Add(new SqlParameter("Name", name));
cmd.Parameters.Add(new SqlParameter("Age", age));

加了那段代码就行了 那段神奇的代码
作者: 黄晓波    时间: 2012-6-4 21:29
为嘛我的加了那段神奇的代码,提示执行成功了,但是数据库表中没数据呢?
作者: G_Xiaotao    时间: 2012-6-4 22:29
要不把那个连接字符串的代码换一下把!!就可以不用神奇的代码了  呵呵  Data Source = 服务器名称,Initial Catalog= 表名,Trusted_Connection = true;  可以用这个试一下哈!!我当时就是没有用老师视频里边讲的那样!!呵呵!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2