贴代码和报错:
try{
OleDbConnection dbconn; //数据库连接
dbconn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; Data Source=E:\d\steward\steward.mdb");
dbconn.Open();
String queryStr = "insert into steward(names,numbers,content,userName,userTel,addTime )values('" + str_nameBox + "','" + str_productBox + "','" + str_contentBox + "','" + str_usernameBox + "','" + str_usertelBox + "','" + str_curDate + "' )";
OleDbCommand MyCom = new OleDbCommand(queryStr, dbconn);
MyCom.ExecuteNonQuery();
MessageBox.Show("数据添加成功", "温馨提示");
dbconn.Close(); }
catch (Exception ex)
{ // 抛出链接异常
//MessageBox.Show(ex.ToString());
ss.Text = ex.ToString();
}ss.Text:的内容System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误。
在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
在 System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
在 steward.AddData.button1_Click(Object sender, EventArgs e) 位置 E:\d\steward\AddData.cs:行号 75
try{
OleDbConnection dbconn; //数据库连接
dbconn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; Data Source=E:\d\steward\steward.mdb");
dbconn.Open();
String queryStr = "insert into steward(names,numbers,content,userName,userTel,addTime )values('" + str_nameBox + "','" + str_productBox + "','" + str_contentBox + "','" + str_usernameBox + "','" + str_usertelBox + "','" + str_curDate + "' )";
OleDbCommand MyCom = new OleDbCommand(queryStr, dbconn);
MyCom.ExecuteNonQuery();
MessageBox.Show("数据添加成功", "温馨提示");
dbconn.Close(); }
catch (Exception ex)
{ // 抛出链接异常
//MessageBox.Show(ex.ToString());
ss.Text = ex.ToString();
}ss.Text:的内容System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误。
在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
在 System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
在 steward.AddData.button1_Click(Object sender, EventArgs e) 位置 E:\d\steward\AddData.cs:行号 75
//参数化就不会有什么‘号,“号之类的错误了。
OleDbConnection dbconn; //数据库连接
dbconn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; Data Source=E:\d\steward\steward.mdb");
dbconn.Open();
String queryStr = "insert into steward(names,numbers,content,userName,userTel,addTime )values(@str_nameBox, @str_productBox,@str_contentBox,@str_usernameBox,@str_usertelBox,@str_curDate)"
OleDbCommand MyCom = new OleDbCommand(queryStr, dbconn);
MyCom.Parameters.Add(new OleDbParameter("@str_nameBox",str_nameBox));
MyCom.Parameters.Add(new OleDbParameter("@str_productBox", str_productBox));
MyCom.Parameters.Add(new OleDbParameter("@str_contentBox", str_contentBox));
MyCom.Parameters.Add(new OleDbParameter("@str_usernameBox", str_usernameBox));
MyCom.Parameters.Add(new OleDbParameter("@str_usertelBox", str_usertelBox));
MyCom.Parameters.Add(new OleDbParameter("@str_curDate", str_curDate));
MyCom.ExecuteNonQuery();
MessageBox.Show("数据添加成功", "温馨提示");
dbconn.Close();
也报错。//表字段 仅id是必填。
OleDbConnection dbconn; //数据库连接
dbconn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; Data Source=E:\d\steward\steward.mdb");
dbconn.Open();
String queryStr = "insert into steward(names)values('@str_nameBox)";
// OleDbCommand MyCom = new OleDbCommand(queryStr, dbconn);
OleDbCommand MyCom = new OleDbCommand(queryStr, dbconn);
MyCom.Parameters.Add(new OleDbParameter("@str_nameBox", str_nameBox));
MyCom.ExecuteNonQuery();
MessageBox.Show("数据添加成功", "温馨提示");
dbconn.Close();
}
catch (Exception ex)
{ // 抛出链接异常
//MessageBox.Show(ex.ToString());
ss.Text = ex.ToString();
}还是报错。
System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误。
在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
在 System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
在 steward.AddData.button1_Click(Object sender, EventArgs e) 位置 E:\d\steward\AddData.cs:行号 77
多了'号,看红色的
OleDbConnection dbconn; //数据库连接
dbconn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; Data Source=E:\d\steward\steward.mdb");
dbconn.Open();
OleDbCommand MyCom = new OleDbCommand("insert into steward(names)values('2')", dbconn);
MyCom.ExecuteNonQuery();
MessageBox.Show("数据添加成功", "温馨提示");
dbconn.Close();
}
catch (Exception ex)
{ // 抛出链接异常
//MessageBox.Show(ex.ToString());
ss.Text = ex.ToString();
}这都错。。F了
上面的insert语句是插入在文本框里面的内容吧~~那么写成这样你再看
String queryStr = "insert into steward(names,numbers,content,userName,userTel,addTime )values('" + str_nameBox.Text + "','" + str_productBox.Text + "','" + str_contentBox.Text + "','" + str_usernameBox.Text + "','" + str_usertelBox.Text + "','" + str_curDate.Text + "' )";
"insert into steward(names)values('2')"这个能有错么? 可是执行还是出错!
"insert into steward(names) values ('2')" 也好
"insert into steward(names) values('2')"
"insert into steward ( names ) values ('2')" 都正确的