2016-04-09 12 views
-2

テーブル"Prices"を作成しました。カラム名が1460217349.29のPricesテーブルに679.09を入力しようとしています。構文エラーMySQLでSELECTが見つかりません

INSERT INTO Prices('1460217349.29') VALUES (678.09); 

私はW3の学校を見て、私は、これは正しい構文であると思いますが、私は構文エラーにmissing SELECT .ANYのアドバイスを取得していますか?これはかなり単純です。

編集:10進数を使用するとバックティックが必要です。私はバックティックについて尋ねなかったが、それは答えのようだ。

+1

[単一引用符、二重引用符、およびバッククォートを使用する場合は可能ですか?](http://stackoverflow.com/questions/11321491/when-to-use-single-quotes-double-quotes-and-backticks ) – lad2025

+2

そのような名前の列は悪い習慣です。とにかく、バッククォートで列名を囲みます – lad2025

答えて

2

あなたの列には非常に興味深い命名規則があります。しかし、列を識別するための正しい方法は、バッククォートを使用することです:

INSERT INTO Prices(`1460217349.29`) 
    VALUES (678.09); 

私は強くエスケープを必要としないものに名前を変更することをお勧めします。実際、数値や時間の値は、列名よりも列の値に似ています。

EDIT:あなたの命名と

問題は、列名にピリオドが含まれていることです。名前をエスケープしない限り、許可されません。また、期間を削除した場合は数字になり、許可されません。

+0

LOL。あなたの答えは当然ですが、その面白い列の名前のために_間違っています。人々が名前の中にバックティックを使って列を作ろうとするとき、私は不思議です。 – PerlDuck

+1

これは強い励ましではありません。 – Strawberry

+0

なぜバッククッキーを使用する必要がありますか?それは数字なのですか?それはキーワードではありません。列を日付文字列にする方が良いでしょうか? –

関連する問題