MySQL學習15_解決Mysql (1064) 錯誤: 1064 - You have an error in your SQL syntax

我在給數據庫中的表添加數據的時候,

寫的語句是:INSERT INTO order VALUES (2, '編號B')

表結構:

出現了錯誤:

INSERT INTO order VALUES (2, '編號B')
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order VALUES (2, '編號B')' at line 1
時間: 0s

 

在檢查了半天sql語句後發現沒什麼毛病,最後發現INSERT INTO order VALUES (2, '編號B')這段語句中用到了mysql的保留字order。

當時真沒想到order居然也能是保留字。好坑啊。

解決辦法如下:

1.表名order使用了mysql的關鍵字,把order用反引號號`括起來,就是鍵盤上Esc鍵下邊的那個鍵。

2.修改order爲不是mysql保留字的名稱,也就是避免使用保留字。

mysql保留字如下表:

ADD    ALL    ALTER
ANALYZE    AND    AS
ASC    ASENSITIVE    BEFORE
BETWEEN    BIGINT    BINARY
BLOB    BOTH    BY
CALL    CASCADE    CASE
CHANGE    CHAR    CHARACTER
CHECK    COLLATE    COLUMN
CONDITION    CONNECTION    CONSTRAINT
CONTINUE    CONVERT    CREATE
CROSS    CURRENT_DATE    CURRENT_TIME
CURRENT_TIMESTAMP    CURRENT_USER    CURSOR
DATABASE    DATABASES    DAY_HOUR
DAY_MICROSECOND    DAY_MINUTE    DAY_SECOND
DEC    DECIMAL    DECLARE
DEFAULT    DELAYED    DELETE
DESC    DESCRIBE    DETERMINISTIC
DISTINCT    DISTINCTROW    DIV
DOUBLE    DROP    DUAL
EACH    ELSE    ELSEIF
ENCLOSED    ESCAPED    EXISTS
EXIT    EXPLAIN    FALSE
FETCH    FLOAT    FLOAT4
FLOAT8    FOR    FORCE
FOREIGN    FROM    FULLTEXT
GOTO    GRANT    GROUP
HAVING    HIGH_PRIORITY    HOUR_MICROSECOND
HOUR_MINUTE    HOUR_SECOND    IF
IGNORE    IN    INDEX
INFILE    INNER    INOUT
INSENSITIVE    INSERT    INT
INT1    INT2    INT3
INT4    INT8    INTEGER
INTERVAL    INTO    IS
ITERATE    JOIN    KEY
KEYS    KILL    LABEL
LEADING    LEAVE    LEFT
LIKE    LIMIT    LINEAR
LINES    LOAD    LOCALTIME
LOCALTIMESTAMP    LOCK    LONG
LONGBLOB    LONGTEXT    LOOP
LOW_PRIORITY    MATCH    MEDIUMBLOB
MEDIUMINT    MEDIUMTEXT    MIDDLEINT
MINUTE_MICROSECOND    MINUTE_SECOND    MOD
MODIFIES    NATURAL    NOT
NO_WRITE_TO_BINLOG    NULL    NUMERIC
ON    OPTIMIZE    OPTION
OPTIONALLY    OR    ORDER
OUT    OUTER    OUTFILE
PRECISION    PRIMARY    PROCEDURE
PURGE    RAID0    RANGE
READ    READS    REAL
REFERENCES    REGEXP    RELEASE
RENAME    REPEAT    REPLACE
REQUIRE    RESTRICT    RETURN
REVOKE    RIGHT    RLIKE
SCHEMA    SCHEMAS    SECOND_MICROSECOND
SELECT    SENSITIVE    SEPARATOR
SET    SHOW    SMALLINT
SPATIAL    SPECIFIC    SQL
SQLEXCEPTION    SQLSTATE    SQLWARNING
SQL_BIG_RESULT    SQL_CALC_FOUND_ROWS    SQL_SMALL_RESULT
SSL    STARTING    STRAIGHT_JOIN
TABLE    TERMINATED    THEN
TINYBLOB    TINYINT    TINYTEXT
TO    TRAILING    TRIGGER
TRUE    UNDO    UNION
UNIQUE    UNLOCK    UNSIGNED
UPDATE    USAGE    USE
USING    UTC_DATE    UTC_TIME
UTC_TIMESTAMP    VALUES    VARBINARY
VARCHAR    VARCHARACTER    VARYING
WHEN    WHERE    WHILE
WITH    WRITE    X509
XOR    YEAR_MONTH    ZEROFILL
————————————————
版權聲明:本文爲CSDN博主「迷途的羔羊_」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/destiny_strive/article/details/82698687

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章