c#+ado+access
向表abc中加一条记录:有四个字段id,parentid,name,des,其中id是自增长的。
现在:
string strSql="insert into abc (parentid,name,des) values (1,'123','')";
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = this.conn;
cmd.CommandText = strSql;
try
{
cmd.ExecuteNonQuery();
}
catch (OleDbException sqlEx)
{
throw new Exception("执行sql语句[ " + strSql + " ]时出错:\n" + sqlEx.Message, sqlEx);
}
finally
{
cmd.Dispose();
}
这里连接没有问题,并且可以用OleDbDataAdapter.full()读取数据到一个datatable
上面的语句也不出错但是执行后没有反应,数据库中不能增加
问一下,怎么有ado,用sql语句的形式向access中添加一条记录呢??????????
------解决方案--------------------判断cmd.ExecuteNonQuery(); 返回值,>0表示执行成功
------解决方案--------------------调试和执行两种状态下access是不一样的,调试时是数据库的副本执行,副本会更新,但结束调试副本删除,真正的数据库没有更新。你执行编译好的可执行程序就可以了。
------解决方案--------------------调试也会更新数据库的
数据库连接有没有打开?conn.Open()