我正在学习连接到Microsoft Access并写入数据库。我在Access中创建了一个数据库,并希望向其中插入数据。为什么说SQL语句有错误插入到
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Amin\Desktop\NamesDatabase1.accdb");
OleDbCommand cmd = new OleDbCommand();
string FN = textBox1.Text;
string LN = textBox2.Text;
cmd.CommandText = "INSERT INTO Names (FirstName, LastName) Values (FN,LN)";
cmd.Connection = conn;
conn.Open();
cmd.ExecuteNonQuery();
在我运行之前似乎没有错误。我运行该程序,更新我textBox1.text
和textBox2.text
,点击保存,然后我得到一个错误:
SYNTAX ERROR in SQL statement Insert into
我做了什么错?
你需要养成使用像这样的参数的习惯:http://stackoverflow.com/questions/5893837/using-parameters-inserting-data-into-access-database这将解决这个问题,并保持你的安全来自SQL注入。 –
由于FN/LN没有自动插入字符串,查询失败。 –