A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 Always. 于 2013-9-17 20:30 编辑

   string dataDir = AppDomain.CurrentDomain.BaseDirectory;
            if (dataDir.EndsWith(@"\bin\Debg\")
                || dataDir.EndsWith(@"\bin\Release\"))
            {
                dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
                AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);
            }

            using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\Database1.mdf;
            integrated Security=true"))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = "Insert into Table1(sname,sno) values('jerry','0101')";
                    cmd.ExecuteNonQuery();
                    Console.WriteLine("插入成功");
                }
          }
问题:控制台上显示”插入成功“,可是表中并没有显示出插入的数据.


评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

8 个回复

倒序浏览
你看一下ExecuteNonQuery()返回值是多少。
回复 使用道具 举报
haxyek 发表于 2013-9-16 23:01
你看一下ExecuteNonQuery()返回值是多少。

  int i =cmd.ExecuteNonQuery();
                    Console.WriteLine(i);
返回值是i的值是1;
可是表里面仍然没有数据

回复 使用道具 举报
数据库刷新了米?
回复 使用道具 举报
你看一下我这种写法,应该可以插入数据。。
  1. string strCon = "server=.;database=MySchool;uid=sa;pwd=huangqun" ;//连接服务器
  2.             string sql = "insert into Person(Id,Name,Age) values(4,'小华',19)" ;//sql插入语句
  3.             using ( SqlConnection con = new SqlConnection (strCon))
  4.             {
  5.                 con.Open();
  6.                 SqlCommand com = new SqlCommand(sql, con); //对数据源执行命令
  7.                 try
  8.                 {
  9.                     int result = com.ExecuteNonQuery();
  10.                     if (result>0)
  11.                     {
  12.                         Console.WriteLine( "数据插入成功!" );
  13.                     }
  14.                 }
  15.                 catch ( Exception ec)
  16.                 {
  17.                     Console.WriteLine(ec.Message);
  18.                 }
  19.             }
复制代码
回复 使用道具 举报
本帖最后由 Always. 于 2013-9-17 00:43 编辑

刷新了。数据仍是没有显示。
回复 使用道具 举报
可能是你的神秘代码没有写对吧?{:soso_e132:}
  1. string dataDir = AppDomain.CurrentDomain.BaseDirectory;
  2.            [b] if (dataDir.EndsWith(@"\bin\Debug\")//注意你写的debug[color=Red][/color][/b]
  3.                 || dataDir.EndsWith(@"\bin\Release\"))
  4.             {
  5.                 dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
  6.                 AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);
  7.             }
复制代码
回复 使用道具 举报
七里香 发表于 2013-9-17 09:04
可能是你的神秘代码没有写对吧?

我刚重新编译了一下,不是这个问题涅。
回复 使用道具 举报
谢谢各位学长。
我的问题已经解决,是路径问题。、
解决方法:在服务器资源管理器中右键你的数据库-----属性-----找到连接字符串 。将连接字符串右边框框中的内容复制替换下边语句中“”里面的内容:SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\我的第一个mdf解决\我的第二个mdf\Database1.mdf;Integrated Security=True;User Instance=True")
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马