我正在學習連接到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沒有自動插入字符串,查詢失敗。 –