2016-09-28 87 views
3

這是我收到的錯誤。帶有消息'SQLSTATE [22007]未捕獲異常'PDOException':日期時間格式無效:1366字符串值不正確

PDOException:未捕獲的異常 'PDOException' 與消息 'SQLSTATE [22007]:無效日期時間格式:1366不正確的字符串值: '\ XF0 \ x9F \ X98 \ XB3' 列 '字串' 在行1'

我知道這裏的問題。列表使用utf8utf8編碼不能存儲4個字節的字符,所以它的錯誤。解決這個問題的方法可能是使用utf8mb4

我的問題是關於錯誤信息。我們正在使用MariaDB。 爲什麼在錯誤信息中顯示「無效的日期時間格式」?這是一個文本字段。正在運行的查詢中與日期時間無關。

這種「無效的日期時間格式」經常出現各種錯誤,但似乎與錯誤的實際來源無關。

+1

因爲mysql日期/時間字符串是'yyyy-mm-dd hh:mm:ss'。考慮到你的'\ xF0',你傳遞的東西甚至不是以這種形式遠程關閉。由於您沒有顯示您的實際查詢,我們無法做任何事情來幫助您。 –

+0

馬克B.說什麼。不要發送'utf8'編碼的字符串作爲'datetime'參數,就這些。 – Mjh

+1

如果您確信沒有日期在執行此查詢時受到傷害,那麼可能是您碰到了一些使我們的生活更有趣的奇怪錯誤。它有多可重複性?你能提供一個獨立的例子嗎? –

回答

2

是的,我以前見過這個。

我想這是mariadb方面的一個錯誤,錯誤值上的所有錯誤都被稱爲「不正確的日期時間值」。

儘管旁邊有點混亂,但我看不出有什麼傷害。請記住該問題並將其視爲「不正確的文本值」

相關問題