最近刚刚解决了用C#连接上数据库,接着发现了一件很奇怪的事情。就是当我在应用程序中操作数据库:创建表、插入数据时,一旦退出应用程序再次运行时,刚刚执行的操作所创建的表、插入的数据都没有了。数据库又是空的了。这到底是怎么回事啊???

解决方案 »

  1.   

    是不是打开错数据库了?怎么可能没有了呢?你更新完数据后打开mssqlmanagement看下表中的数据,确认下先
      

  2.   

    代码贴出来
    上面的那些人在说啥?
    一个简单的插入,还需要手动提交????
    commit是用在事物里的
    楼主刚学怎么连数据库,肯定不会用事物的了
      

  3.   

    你们是怎么操作sqlserver2005的啊,我是通过vs2005的视图-》服务器资源管理器
    来操作的?
      

  4.   

    没提交吧http://www.csharp360.com/bbs
      

  5.   

    这是一部分代码,用来执行SQL语句的,大家看看怎么回事。
     /* 执行SQL命令 */
                btnExeSQL.Click += delegate(object sender, EventArgs e)
                {
                    if (IsConnectionOpen() == false)
                    {
                        MessageBox.Show("操作失败!请先打开数据库",
                                    "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        lblOperatingState.Text = "执行SQL命令失败!";
                        return;
                    }
                    if (richSQL.Text == string.Empty)
                    {
                        MessageBox .Show ("SQL语句不能为空",
                                    "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        lblOperatingState.Text = "执行SQL命令失败!";
                        return;
                    }
                    try
                    {
                        using (objCommand = new SqlCommand(richSQL.Text, objConnection))
                        {
                            objCommand.ExecuteNonQuery();
                            lblOperatingState.Text = "执行SQL命令完毕!";
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("发生错误:" + ex.Message);
                    }
                };
      

  6.   

    可能是你的Sql语句写错了。
    还有,打开数据库操作的语句呢??
    objConnection.Open();   //打开数据库操作连接语句
    我没看到哦!
      

  7.   

    你先在执行后就打开SQL管理器查看一下数据有没有。
      

  8.   

    richSQL.Text,请问text是自己输的内容么?你又输入了些什么语句呢?
      

  9.   

    请问一下楼上的 怎样提交 是connnction1.commit()吗