我有一个C#的Windows应用程序,我想将用户输入的数据插入到Access数据库中。我没有收到任何错误提示,但是数据并没有被插入。你有什么思路吗?
string sqlInsert = "insert into assessment (id) values (@id)";
using (OleDbConnection conn = new OleDbConnection(dsn))
{
OleDbCommand cmd = new OleDbCommand(sqlInsert, conn);
cmd.Parameters.Add("@id", OleDbType.VarChar, 50).Value = iDTextBox.Text.Trim().Length != null ? storedID.Trim() : "";
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
id的数据类型是Text
。
编辑: 连接字符串存储在app.config中:
<add name="conn" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\CADSCUPP.mdb" providerName="System.Data.OleDb"/>
在代码中可以通过以下方式访问:
private string dsn = System.Configuration.ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
如果我手动插入记录(而不是通过代码后端插入),我可以在程序的其他位置读取这些记录,因此连接正常工作。