myComm.Update(myDataSet,"aspnet");出错: INSERT INTO 语句的语法错误。我快疯了 没有用OleDbCommandBuilder对象myb构造出insert语句 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DataRow row = dataSet1.qymccx.NewRow();row["nbxh"] = "11111111111";row["qymc"] = "ly";dataSet1.qymccx.Rows.Add(row); sqlDataAdapter1.Update(dataSet1,"qymccx");这是我的一段代码,可行的,你看看是不是你提交的表单数据不合法。你先改成具体的值试试 新情况调试中数据库产生了一Access.LockFile.9文件好象被打开了的 OleDbDataAdapter adapter=new OleDbDataAdapter ();adapter.SelectCommand=mycomm;adapter.Fill (myDataSet);用这个看看 我将原来建的数据库烤到db目录DataTable dt;dt=myDataSet.Tables["bbs"];DataRow dr=dt.NewRow();dr["user"] = "yes";myDataSet.Tables["bbs"].Rows.Add(dr);myComm.Update(myDataSet,"bbs");yes添加了看来是数据库问题但新建的数据库和我拷来的在同一目录设置一样就是不行怎么回事啊!!我已经疯了!!!! string strComm = "select * from bbs order by id"; 你使用 OleDbDataAdapter 更新数据库却没有给他一个 用来更新的 OleDbCommand 使用 OleDbDataAdapter 的 Update(myDataSet,"aspnet");方法时 如果dataSet里面有新的行OleDbDataAdapter 会自动调用 他的 InsertCommand 来执行更新操作你这里的 InsertCommand ==null string insertString = "INSERT INTO aspnet ( user) VALUES ( @user) ";OleDbCommand insertCommand = new OleDbCommand insertString ,myConnection);myComm.InsertCommand = insertCommand;myComm.Update(myDataSet,"aspnet");这是我根据你提供的信息写的一个样例代码 没有测试过你根据他来做 谢谢了还是用不了,我放弃asp.net了这问题折磨了我2天该死的微软 下面是一个使用 SqlCommand 的例子上面哪个有问题 你参照这个写 //CustomerData 是从 DataSet 继承的一个类private SqlCommand GetInsertCommand(){if(insertCommand == null){ // // 如果没有 command 创建它 //string insertString = @"INSERT INTO customer (phone , customerName ) VALUES ( @Phone , @Name)";insertCommand = new SqlCommand(insertString,new SqlConnection(connectString));insertCommand.CommandType = CommandType.Text;insertCommand.Parameters.Add(new SqlParameter(PHONE_PARM,SqlDbType.Char));insertCommand.Parameters.Add(new SqlParameter(NAME_PARM,SqlDbType.NVarChar,20)); // //定义数据操作参数 与 DataSet 字段的映射 //insertCommand.Parameters[PHONE_PARM].SourceColumn = CustomerData.PHONE_FIELD ;insertCommand.Parameters[PHONE_PARM].Direction = ParameterDirection.Input;insertCommand.Parameters[NAME_PARM].SourceColumn = CustomerData.NAME_FIELD;}return insertCommand;} 微软并没有什么过错asp.net 也没有什么不好 尽管他还不是很稳定其实 两天 又算什么? 现在确定是数据库Access 的问题我用public void submit_Click(Object src,EventArgs e){ string username1 = Request.Form["username"]; string address1 = Request.Form["address"]; string school1 = Request.Form["shool"]; //开始联结 string insertstr="INSERT INTO aspnet(user) VALUES ('"; insertstr += username1 + "')"; try { string myConnstring="Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source="+Server.MapPath(".\\db\\yes.mdb") ; OleDbConnection MyConnection; MyConnection = new OleDbConnection(myConnstring); OleDbCommand MyCommand = new OleDbCommand(insertstr,MyConnection); MyConnection.Open(); MyCommand.ExecuteNonQuery(); MyConnection.Close(); Info.Text="数据已经保存"; } catch(Exception ee) { Info.Text="发生错误:"+ee.Message; }}也不能添加,有谁遇到过吗?? ajax方式获取记录ID的问题 MSChart 请您估个价 ASP.NET实用技巧(一),转 怎样合并DataGrid的HeadText指asp.net Help: Container and Template in Web Custom Control 问题紧急!!!我做了一个.chm的帮助文件,怎么把它放到我的.aspx页面上啊? URL重写后如果获得当前页地址 写了一个 cookie 操作函数 希望对新手有所帮助(vb) ASP.net用ViewState缓存页面,同时带来了传输量大的幅面影响 有鬼了,判断语句也会出错,大家来看看! 如何在vb.net中处理动态添加的控件的事件?
row["nbxh"] = "11111111111";
row["qymc"] = "ly";
dataSet1.qymccx.Rows.Add(row);
sqlDataAdapter1.Update(dataSet1,"qymccx");
这是我的一段代码,可行的,你看看是不是你提交的表单数据不合法。你先改成具体的值试试
adapter.SelectCommand=mycomm;
adapter.Fill (myDataSet);用这个看看
DataTable dt;
dt=myDataSet.Tables["bbs"];
DataRow dr=dt.NewRow();
dr["user"] = "yes";
myDataSet.Tables["bbs"].Rows.Add(dr);
myComm.Update(myDataSet,"bbs");yes添加了看来是数据库问题但新建的数据库和我拷来的在同一目录设置一样
就是不行怎么回事啊!!
我已经疯了!!!!
用来更新的 OleDbCommand
使用 OleDbDataAdapter 的 Update(myDataSet,"aspnet");
方法时 如果dataSet里面有新的行
OleDbDataAdapter 会自动调用 他的 InsertCommand 来执行更新操作
你这里的 InsertCommand ==null
string insertString = "INSERT INTO aspnet ( user) VALUES ( @user) ";
OleDbCommand insertCommand = new OleDbCommand insertString ,myConnection);
myComm.InsertCommand = insertCommand;
myComm.Update(myDataSet,"aspnet");这是我根据你提供的信息写的一个样例代码 没有测试过
你根据他来做
该死的微软
上面哪个有问题 你参照这个写
//CustomerData 是从 DataSet 继承的一个类private SqlCommand GetInsertCommand()
{
if(insertCommand == null)
{
//
// 如果没有 command 创建它
//
string insertString = @"INSERT INTO customer (phone , customerName ) VALUES ( @Phone , @Name)";
insertCommand = new SqlCommand(insertString,new SqlConnection(connectString));
insertCommand.CommandType = CommandType.Text;insertCommand.Parameters.Add(new SqlParameter(PHONE_PARM,SqlDbType.Char));
insertCommand.Parameters.Add(new SqlParameter(NAME_PARM,SqlDbType.NVarChar,20));
//
//定义数据操作参数 与 DataSet 字段的映射
//
insertCommand.Parameters[PHONE_PARM].SourceColumn = CustomerData.PHONE_FIELD ;
insertCommand.Parameters[PHONE_PARM].Direction = ParameterDirection.Input;insertCommand.Parameters[NAME_PARM].SourceColumn = CustomerData.NAME_FIELD;
}
return insertCommand;
}
asp.net 也没有什么不好 尽管他还不是很稳定其实 两天 又算什么?
我用
public void submit_Click(Object src,EventArgs e)
{
string username1 = Request.Form["username"];
string address1 = Request.Form["address"];
string school1 = Request.Form["shool"]; //开始联结
string insertstr="INSERT INTO aspnet(user) VALUES ('";
insertstr += username1 + "')";
try
{
string myConnstring="Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source="+Server.MapPath(".\\db\\yes.mdb") ;
OleDbConnection MyConnection;
MyConnection = new OleDbConnection(myConnstring);
OleDbCommand MyCommand = new OleDbCommand(insertstr,MyConnection);
MyConnection.Open();
MyCommand.ExecuteNonQuery();
MyConnection.Close();
Info.Text="数据已经保存";
}
catch(Exception ee)
{
Info.Text="发生错误:"+ee.Message;
}}
也不能添加,有谁遇到过吗??