Using reserved words in column names

前端 未结 2 1027
轮回少年
轮回少年 2020-11-30 14:27

this is some simple code but I just don\'t know why I can\'t use this word as the entity of the table

CREATE TABLE IF NOT EXISTS users(
key INT PRIMARY KEY N         


        
相关标签:
2条回答
  • 2020-11-30 14:41

    You can still use key if you want to. Just wrap it with backtick,

    CREATE TABLE IF NOT EXISTS users
    (
        `key` INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
        username VARCHAR(50) NOT NULL,
    );
    

    but as an advise, refrain from using any reserved keyword to avoid future problems. :)

    • MySQL Reserved Keywords List
    0 讨论(0)
  • 2020-11-30 14:53

    Trailing Underscore

    Simple solution: Add a trailing underscore to every name.

    The SQL spec SQL:2011 explicitly promises to never use a trailing underscore on any keyword, neither now nor in the future.

    Example: key_

    See my answer to a similar question, h2 database column name is reserved word.

    0 讨论(0)
提交回复
热议问题