为什么INSERT INTO 语句的语法错误?
ACCESS2000库test.mdb的student表(name,number),C#往库中插入一条记录,为什么INSERT INTO 语句的语法错误?
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script language="C#" runat="server">
private void btnOK_Click(object sender, System.EventArgs e)
{
OleDbConnection cn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("test.mdb"));
//string strSQL="insert into student(name,number) values("+TextBox1.Text+",'"+TextBox2.Text+"')";
string strSQL="insert into student(name,number) values('"+TextBox1.Text+"','"+TextBox2.Text+"')";
OleDbCommand cm=new OleDbCommand(strSQL,cn);
cn.Open();
Response.Write(strSQL);
try
{
cm.ExecuteReader();
Label1.Text="添加成功!";
}
catch(Exception ee)
{
Label1.Text="添加失败!错误信息:"+ee.ToString();
}
cn.Close();
}
</script>
<html>
<body>
<form runat="server" >
姓名:<asp:textbox id="TextBox1" runat="server" />
<BR>
学号:<asp:textbox id="TextBox2" runat="server" />
<asp:label id="Label1" runat="server" />
<BR>
<asp:button text="确定" onclick="btnOK_Click" runat="server" />
</form>
</body>
</html>
添加失败!错误信息:System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误。 at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(Int32 hr) at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior) at System.Data.OleDb.OleDbCommand.ExecuteReader() at ASP.insert2_ASPX.btnOK_Click(Object sender, EventArgs e)