私はMySQL(MS SQLから来たもの)にいくぶん新しく、データベースに値を挿入しようとすると、私にはとても混乱しています。MySQL INSERT - フィールド名にはバックティック/アクセント区切りが必要ですか?
PHPでINSERT SQLコマンドを作成しましたが、実行しようとするとエラーが発生しました。
INSERT INTO myTableName (first-name, last-name) VALUES ('Ted', 'Johnson')
私の考え方には、上記の文字列は機能しているはずですが、それはできませんでした。私もphpMyAdminで直接使用しようとしましたが、私は同じ構文エラーを持っています。
SQLステートメントのフィールド名を "バックティック"または "アクセント"文字(キーボードのチルダキーのもう一方の文字)で囲んでいるだけです。たとえば...
INSERT INTO myTableName(`first-name`, `last-name`) VALUES ('Ted', 'Johnson')
これは、MySQLまたはMS SQL Serverでは必要ではありません。私は常にフィールド名を区切ることなく列挙しました。誰もこれを前に走っていますか?私はMySQL 5.0.77を使用しています。ありがとうございました。
愚かなテーブル名(マイナスを含む名前やSQLキーワードでもある名前など)を主張する場合は、名前を引用する必要があります。さもなければあなたはしません。 –
あなたはそれを包みましたか( "......")? – carlgcode
firstNameまたはfirst_nameまたはfirstNameまたはfirstnameがより良いオプションです –