...........................
string insertstring = "INSERT INTO sinfor VALUES('"+ctextBox1.Text+"','"+ccomboBox1.Text+"','"+ccomboBox2.Text+"','"+ctextBox8.Text+"','"+ctextBox7.Text+"','"+ctextBox3.Text+"','"+ctextBox4.Text+"','"+ctextBox6.Text+"','"+ctextBox5.Text+"','"+ctextBox2.Text+"')";
            conn.Open();
OleDbCommand cmd = new OleDbCommand(insertstring,conn);

cmd.ExecuteNonQuery(); ///在这行提示出问题,但去掉这行,数据库并没有写入内容
cmd.Dispose();
conn.Close();还有 如果我想在数据成功后 加个 
MessageBox.Show("您已成功输入!"); 应该怎么加个判断语句?
各位大哥  帮忙看看

解决方案 »

  1.   

    看看是不是你的SQL语句有问题然后看看mdb是不是只读的
      

  2.   

    他 已经执行到 cmd.ExecuteNonQuery(); 这了呀
    还有去掉这句 就没有报错了
      

  3.   

    cmd.ExecuteNonQuery(); 
    这条是执行你上面的语句命令!你去掉这句!等于没执行!当然不会报错!
    最简单的处理方法!你在cmd.ExecuteNonQuery();这个地方设个断点,然后执行到这个地方的时候,查看一下执行信息!把 insertstring 这个变量中的语句复制到access中执行一下!看报什么错!就知道应该怎么改了
      

  4.   

    你的PROJECT最好放在WWWROOT下,就不会出问题。
    以前我遇到过同样的问题,只要PROGECT不在C:\INETPUC\WWWROOT下,ACCESS就不允许删除和修改,在WWWROOT下怎么操作都行,上传到服务器[服务器的虚拟目录在D盘]就没问题。不知道什么原因。一个笨办法是把数据库所在的文件夹共享且允许别人更改你的文件。
    定义变量 int iCount=cmd.ExecuteNonQuery(); 
    通过判断iCount的值来确定是否添加成功。
      

  5.   

    1.如何判断成功?
    if(cmd.ExcuteNonQuery()>0)
    {
        MessageBox.Show("您已成功输入!");
    }
    2.你上面的为什么没有成功?
    怀疑是你insertstring写错了!你插入断点跟踪下看看是不是正确得格式
      

  6.   

    内存中显示"string insertstring = "INSERT INTO sinfor VALUES('ctextBox1.Text','ccomboBox1.Text')"我不知道哪儿错了
    access 哪儿可以执行SQL语句
    我没有找到
      

  7.   

    我做的是windows程序
    我把数据库文件放在一个文件夹内
    设置了 共享   和写入  查询 存档等权限conn 也能连接上
    我不知道哪儿出了问题/:(
      

  8.   

    INSERT
    INTO table 
    VALUES ('GN','ctextB','ccomboB','JK');
    这也提示 有插入语法错误 我找不出来
    大家帮我看看