2010-12-12 21 views
0

これは私が受け取っているエラーです。1064 - SQL構文にエラーがあります。 ':i:sa)、rec_type =' '、rec_request =' 1 '、rec_by =' Victoria '、batch_id = UC' in line 1の近くで使用する正しい構文については、MySQLサーバのバージョンに対応するマニュアルを確認してください。SQLの挿入エラーSQL構文... date()

また、私は挿入する前にエスケープする必要があることを知っています。私はちょうど今テスト中です。

$importwav="INSERT into names SET 
com_id = '".$word_id."', 
rec_date = date(d-M-y), 
rec_time = date(h:i:s a), 
rec_type = '".$rec_type."', 
rec_request = '1', 
rec_by = '".$data[8]."', 
batch_id = UCASE('".$batchid."') 
"; 


    INSERT into names SET com_id = '87', rec_date = date(d-M-y), 
rec_time = date(h:i:s a), rec_type = '', rec_request = '1', 
rec_by = 'Victoria', batch_id = UCASE('Batch004AM') 
+0

** –

+0

はdatetime'タイプ 'の単一' rec_date'フィールドを作ると 'rec_date = localtime'で一度に日付と時刻の両方を割り当てます。 –

+1

愚か者ではない、適切な日付形式を使用してください –

答えて

3

PHP関数とMySQL関数が混乱しています。

$importwav="INSERT into names SET 
com_id = '".$word_id."', 
rec_date = '" . date('d-M-y') . "', 
rec_time = '" . date('h:i:s a') . "', 
... 

あなたのSQL構文はFUBARです。

+0

うーん... InacioはあなたのSQL構文がFUBARで、3票を得ていると言います。私はあなたのSQL構文が不適切であり、否定的な投票を得ると言う。ああ... .. –

+0

@ブライアン彼はその発言に間違っており、答えの残りの部分は大丈夫です(ラメデータ形式はもちろんのこと、保存します)。あなたの答えは実際には何の助けにもなりませんが、コメントに記載されているように、文字通り使用されているので問題を解決することはできません。彼の息子は違うから。話題にあなたの答えを書くだけでアップヴォートを得ることができます。それは簡単です。 –

-1

date()引数は文字列である必要があります。一重引用符(')で日付書式文字列を囲んでみてください。

0

不適切なSQL構文。 ** REC日付がY-M-D形式のものであってもよい

INSERT INTO table (col1, col2) VALUES (val1, val2) 
+0

私はそのようにしていますが、多くのフィールドエントリを挿入すると混乱するようになります。 – acctman