我試圖在C#中的表中插入一條記錄,但是當我到達執行查詢以將記錄插入表中的查詢時,它只是來到了這個錯誤:嘗試將數據插入到SQLite數據庫時數據類型不匹配
An exception of type 'System.Data.SQLite.SQLiteException' occurred in System.Data.SQLite.dll but was not handled in user code
Additional information: datatype mismatch
,我必須將數據插入到數據庫的代碼如下:
string stmt = string.Format("INSERT INTO quotes (id, user, quote, date) VALUES ('', '{0}', '{1}', '{2}')", person, quote, date);
SQLiteCommand cmd = new SQLiteCommand(stmt, connection);
int rowsAffected = cmd.ExecuteNonQuery();
person
,quote
和date
都是字符串和結構的數據庫如下所示:
id = INTEGER PRIMARY KEY
,user = STRING(255)
,quote = STRING(255)
和date = STRING(255)
它看起來像你想插入一個字符串(在第一個元素插入數據值子句)轉換爲整數(id)。 –
我不知道mismatch問題,但你可以寫這樣的查詢太字符串stmt = string.Format(「INSERT INTO引號(用戶,報價,日期)VALUES('{0}','{1}','{ 2}')「,person,quote,date);如果id是自動增加的。 –
從使用SQL參數開始。如果文本包含「O'Toole」之類的東西,它會崩潰;他們也將確保通過正確的類型 – Plutonix