我試圖執行一個SQL Server CE數據庫的命令插入,該命令是隨初學者asp.net網站提供的。我試圖保持代碼的動態,所以我可以將其用作此數據庫中所有表的數據庫管理頁面。我不斷收到如何在asp.net中插入SQL Server CE數據庫
拋出異常:「System.Data.SqlServerCe.SqlCeException」在System.Data.SqlServerCe.dll
我試圖只是一個長字符串作爲查詢,但要做到這一點那也沒用。我錯過了什麼/做錯了什麼?
SqlCeCommand Sqlcmd = new SqlCeCommand();
Sqlcmd.Connection = db.Connection as SqlCeConnection;
var Cols = "";
foreach (var column in Columns)
{
Sqlcmd.Parameters.AddWithValue('@'+column, Request.Form[column]);
Cols += column + ",";
insertValues += '@' + it + ",";
}
Cols = Cols.Substring(0, Cols.Length - 1);
insertValues = insertValues.Substring(0, insertValues.Length - 1);
Sqlcmd.CommandText =
"INSERT INTO " + table + "("+Cols+") " +
"VALUES ("+insertValues+")";
Sqlcmd.Prepare();
Sqlcmd.ExecuteNonQuery();
異常的'InnerException'的值是什麼?使用'catch'塊,並在'using'語句中包裝你的數據庫連接。 – Dai
什麼是實際的命令文本? – ErikEJ
感謝戴,我能夠通過使用捕獲和檢查Visual Studio中的錯誤來挖掘並發現問題。問題是我在postID上設置了一個外鍵,並且我輸入的測試數據沒有考慮到它。所以我改變了postID到一個有效的postID,現在它工作。再次感謝 – Peavey2787