簡體   English   中英

查詢時出現MySQL語法錯誤,出了什么問題

[英]MySQL Syntax error on query, what's wrong

我在這里瘋了……我是SQL初學者..但是我一生都看不到我的語句出了什么問題:

CREATE TABLE usage 
  (id BIGINT AUTO_INCREMENT
  , use_date datetime 
  , ctn VARCHAR(255)
  , destination VARCHAR(255)
  , cost_type BIGINT
  , cost BIGINT
  , up_data bigint
  , down_data bigint
  , INDEX cost_type_idx (cost_type)
  , PRIMARY KEY(id) ) ENGINE = INNODB;

這是MySQL(版本5.5.8)引發的錯誤

SQLSTATE [42000]:語法錯誤或訪問沖突:1064 SQL語法有錯誤; 在第1行中,檢查與MySQL服務器版本相對應的手冊,以找到在'用法(id BIGINT AUTO_INCREMENT,use_date datetime,ctn VARCHAR(255),destinatio')附近使用的正確語法。失敗的查詢:“創建表的用法(id BIGINT AUTO_INCREMENT ,use_date datetime,ctn VARCHAR(255),目標VARCHAR(255),cost_type BIGINT,cost BIGINT,up_data bigint,down_data bigint,INDEX cost_type_idx(cost_type),PRIMARY KEY(id)ENGINE = INNODB”。失敗查詢:CREATE TABLE用法(id BIGINT AUTO_INCREMENT,use_date datetime,ctn VARCHAR(255),目標VARCHAR(255),cost_type BIGINT,cost BIGINT,up_data bigint,down_data bigint,INDEX cost_type_idx(cost_type),PRIMARY KEY(id))ENGINE = INNODB

它說near ,然后給我大約30個字符!

我嘗試使用不同的列名,以防我使用關鍵字。 我嘗試了不同的DataTypes-仍然沒有運氣!

我確信這很明顯為什么對那些十分鍾沒有撕頭發的人不起作用-有人請讓我擺脫痛苦!

出現該錯誤是因為USAGE是mysql中的保留字。

有關保留字的列表,請參見: http : //dev.mysql.com/doc/refman/5.5/en/reserved-words.html

此外,盡管它確實為您提供了很大一部分查詢,但它是最重要的第一部分...它near 'usage說,這通常是它所遇到的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM