サーチ…


前書き

MySQLには予約語という特別な名前があります 。予約語は、テーブルや列などの識別子としてバッククォート( `)で囲まれている場合にのみ使用できます。それ以外の場合は、エラーが発生します。

このようなエラーを回避するには、予約語を識別子として使用しないでください。

備考

すべての予約語は次のとおりです( 公式ドキュメントから):

  • アクセス可能な
  • 追加
  • すべて
  • ALTER
  • 分析
  • そして
  • として
  • ASC
  • 有能な
  • の間に
  • BIGINT
  • バイナリ
  • BLOB
  • 両方
  • によって
  • コール
  • カスケード
  • 場合
  • 変化する
  • CHAR
  • キャラクター
  • チェック
  • COLLATE
  • カラム
  • 調子
  • コンストレイント
  • 持続する
  • コンバート
  • CREATE
  • クロス
  • 現在の日付
  • 現在の時刻
  • CURRENT_TIMESTAMP
  • 現在の使用者
  • カーソル
  • データベース
  • データベース
  • DAY_HOUR
  • DAY_MICROSECOND
  • DAY_MINUTE
  • DAY_SECOND
  • DEC
  • DECIMAL
  • 宣言
  • デフォルト
  • 遅延
  • 削除
  • DESC
  • DESCRIBE
  • 決定的
  • DISTINCT
  • DISTINCTROW
  • DIV
  • ダブル
  • ドロップ
  • デュアル
  • ELSE
  • ELSEIF
  • 同梱
  • エスケープ
  • 存在
  • 出口
  • 説明する
  • フェッチ
  • 浮く
  • FLOAT4
  • FLOAT8
  • にとって
  • 外国人
  • から
  • フルテックス
  • GENERATED
  • 取得する
  • 付与
  • グループ
  • HAVING
  • HIGH_PRIORITY
  • HOUR_MICROSECOND
  • HOUR_MINUTE
  • HOUR_SECOND
  • IF
  • IGNORE
  • INDEX
  • INFILE
  • インナー
  • INOUT
  • 潜在的
  • インサート
  • INT
  • INT1
  • INT2
  • INT3
  • INT4
  • INT8
  • 整数
  • 間隔
  • IO_AFTER_GTIDS
  • IO_BEFORE_GTIDS
  • IS
  • ITERATE
  • ジョイン
  • キー
  • キーズ
  • 殺します
  • 主導
  • 離れる
  • 好き
  • 限定
  • リニア
  • ライン
  • 負荷
  • 現地時間
  • LOCALTIMESTAMP
  • ロック
  • 長いです
  • LONGBLOB
  • ロングテックス
  • ループ
  • LOW_PRIORITY
  • MASTER_BIND
  • MASTER_SSL_VERIFY_SERVER_CERT
  • 一致
  • MAXVALUE
  • MEDIUMBLOB
  • MEDIUMINT
  • MEDIUMTEXT
  • ミドル
  • MINUTE_MICROSECOND
  • MINUTE_SECOND
  • MOD
  • 変更
  • ナチュラル
  • NOT
  • NO_WRITE_TO_BINLOG
  • ヌル
  • 数字
  • 最適化
  • OPTIMIZER_COSTS
  • オプション
  • OPTIONALLY
  • または
  • 注文
  • でる
  • OUTFILE
  • パーティション
  • 精度
  • 一次
  • 手順
  • パージ
  • 範囲
  • 読む
  • READS
  • 読み書き
  • リアル
  • 参考文献
  • REGEXP
  • リリース
  • リネーム
  • 繰り返す
  • 置換
  • 要求
  • 結節
  • 制限
  • 戻り値
  • 取り消す
  • RLIKE
  • SCHEMA
  • シェーマス
  • SECOND_MICROSECOND
  • セレクト
  • 感受性
  • セパレータ
  • セット
  • ショー
  • 信号
  • SMALLINT
  • スパイラル
  • 特定
  • SQL
  • SQLEXCEPTION
  • SQLSTATE
  • SQLWARNING
  • SQL_BIG_RESULT
  • SQL_CALC_FOUND_ROWS
  • SQL_SMALL_RESULT
  • SSL
  • 起動
  • ストアド
  • STRAIGHT_JOIN
  • 終了した
  • その後
  • TINYBLOB
  • TINYINT
  • TINYTEXT
  • TRAILING
  • 引き金
  • UNDO
  • 連合
  • ユニーク
  • UNLOCK
  • UNSIGNED
  • 更新
  • 使用法
  • つかいます
  • USING
  • UTC_DATE
  • UTC_TIME
  • UTC_TIMESTAMP
  • VALUES
  • 多変量
  • VARCHAR
  • VARCHARACTER
  • バリエーション
  • バーチャル
  • いつ
  • どこに
  • 間もなく
  • WITH
  • 書きます
  • XOR
  • 年月
  • ゼロフィル
  • GENERATED
  • OPTIMIZER_COSTS
  • ストアド
  • バーチャル

予約語によるエラー

このようなorderというテーブルから選択しようとすると

select * from order

エラーが発生します。

エラーコード:1064. SQL構文にエラーがあります。あなたのMySQLサーバのバージョンに対応するマニュアルをチェックし、正しい構文が第1行目の 'order'の近くで使用されるようにしてください

MySQLの予約済みのキーワードはバッククォート( ` )でエスケープする必要があります

select * from `order`

キーワードと表または列名を区別することができます。

参照: MySQLで予約語をテーブルまたはカラム名として使用するための構文エラー



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow