2014-01-08 74 views
0
date_default_timezone_set('America/Los_Angeles'); 
$date = date('m/d/Y h:i:s a', time()); 


$sql = "INSERT INTO BidList (BidID,JobNumber,Created,Final) 
      VALUES ('$bidid','$jobnumber',$date,'No')"; 

如果我做「$日期」,而不是$日我得到一個數據類型不匹配的錯誤,因爲「創造」是一個類型的,當「日期/時間」在我的數據庫。將日期保存到Microsoft Access數據庫的正確方法是什麼?我需要在我的數據庫中使用字段類型'Date',所以我不能簡單地將其轉換爲文本。PHP語法錯誤(缺少操作員)試圖挽救日期

回答

1

您需要在您的日期附近有引號。您遇到類型不匹配的原因是因爲日期需要格式爲Year-month-day,時間爲Hours:minutes:seconds。因此,您需要將數據類型更改爲DATETIME或將其存儲爲日期。

從MySQL手冊

The DATETIME type is used for values that contain both date and time parts. MySQL retrieves and displays DATETIME values in 'YYYY-MM-DD HH:MM:SS' format. The supported range is '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.

+1

沒有。他已經嘗試過了,並且出現了一個錯誤:'我得到一個數據類型不匹配錯誤,因爲'Created'是'Date'類型(這是第一個答案) – Cilan

+0

謝謝,我必須指定日期/常規日期「以獲取正確的數據類型。 – Hoser

1

如果你只想要日期,那麼就使用的日期部分。

變化

$date = date('m/d/Y h:i:s a', time()); 

$date = date('Y-m-d'); 

報價,報價是SQL的日期必要。

+0

我想這裏既有日期和時間,數據庫字段類型實際上是日期/時間。 我不相信引號是必需的,因爲我經常把它們關閉以將整數插入到我的數據庫中。在這裏添加一個引號可以將東西轉換爲輸入文本,這經常導致數據類型不匹配錯誤。 – Hoser

+0

@Hoser這是整數,整數不需要引號。 – xdazz

+0

對不起,我認爲你的意思總是需要引號 – Hoser

相關問題