0
我正在使用Mysql數據庫從API插入數據在C#代碼中。所有其他數據可以插入接受一個字段date.Below是我的代碼插入日期時MySql數據庫
cmd.CommandText = "INSERT INTO wpcommon.livingsocialoffers(id,uuid,title,starting) VALUES(@id,@uuid,@title,@starting)";
cmd.Parameters.AddWithValue("@id", "1599694");
cmd.Parameters.AddWithValue("@uuid", "572a260d-bcd6-48fa-8ef9-c8faaf9d84d9");
cmd.Parameters.AddWithValue("@title", "testtitle");
DateTime date= Convert.ToDateTime("6/2/2016 12:12:30 PM");
cmd.Parameters.AddWithValue("@starting", date);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
執行cmd.ExecuteNonQuery(時),其捕獲錯誤:
您的SQL語法錯誤;檢查對應於你的MySQL服務器版本使用近 「(ID,UUID,標題,起始)VALUES(@ ID,@ UUID,@標題,@啓動)」
我已經正確的語法手冊使用
cmd.Parameters.AddWithValue("STR_TO_DATE('@starting','%d/%m/%Y %H:%i:%s')", date);
這個錯誤發生在我試圖插入日期only.If我從代碼中刪除日期其工作正常。
嘗試'DateTime.Parse',並考慮使用'Add'而不是'AddWithValue' – Plutonix
日期屬於API,所以我把json字符串轉換爲模態列表,實際的api日期是:「2016-06-02T16:12:30 + 00:00」和DeserializeObject之後「2016年6月2日下午12:12:30」所以我寫了最後的插入聲明。我也試過只有ADD,但它的捕獲相同的錯誤 – Csharp
您可能需要將結果解析爲NET DateTime:「6/2/2016」可能在6月2日或2月6日之間不明確,具體取決於文化 – Plutonix