ERROR 1064(42000),创建mysql表时

时间:2017-08-17 17:32:01

标签: mysql syntax-error mysql-error-1064

我正在尝试创建一个表,但它给了我这个错误:

  

错误1064(42000):您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,找到'INT NOT NULL AUTO_INCREMENT

附近的正确语法

这是我的代码:

    CREATE TABLE bowling_scores (
    PlayerID, INT NOT NULL AUTO_INCREMENT
    , LName VARCHAR(100) NOT NULL
    , FName VARCHAR(100) NOT NULL
    , Game1 INT NULL
    , Game2 INT NULL
    , Game3 INT NULL
    , Game4 INT NULL
    , PRIMARY KEY (PlayerID)
    );

4 个答案:

答案 0 :(得分:1)

这是一个明显的错误:

int[] odds= new int[numberOfOdds];
int i = 0;

for (int j = -6; j <= 38; j++)
{
  if(j % 2 == 1)
  {
      odds[i++] = j;
   }
}

你有一个无关的逗号。它应该是:

PlayerID, INT NOT NULL AUTO_INCREMENT

也停止在SQL语句的下一行添加逗号!

答案 1 :(得分:1)

以下是有关语法错误消息的提示:该消息告诉您错误的位置。

  

检查与您的MySQL服务器版本对应的手册,以便在'INT NOT NULL AUTO_INCREMENT

附近使用正确的语法

这告诉你,MySQL变得困惑,因为它不期望看到那个文本。这通常意味着您在此时犯了错误,或者在之前立即

这可以帮助您将SQL语句中的搜索范围缩小到出错的程度。

错误消息还告诉您该怎么做:查看手册。您应该通过阅读文档和示例来帮助自己更好地学习SQL。

我已经使用MySQL近20年了,但我仍然每天都会参考参考文档。事实上,它是因为我对MySQL很有经验,我知道这是正确的做法。

所有SQL语句都在手册中有一个参考页面。这是CREATE TABLE的页面:https://dev.mysql.com/doc/refman/5.7/en/create-table.html

MySQL手册很大,所以很容易想到“我不知道正确的页面在哪里。”逐渐地,您可以了解手册的组织方式。注意左列上的链接层次结构。如果有疑问,只需使用谷歌“mysql create table syntax”这样的短语。

您应该能够自己回答简单的语法错误,而不是发布到Stack Overflow。你会更快地得到答案!

答案 2 :(得分:0)

这应该有效。您在PlayerID

之后有逗号
CREATE TABLE bowling_scores (
    PlayerID INT NOT NULL AUTO_INCREMENT,
    LName VARCHAR(100) NOT NULL,
    FName VARCHAR(100) NOT NULL,
    Game1 INT NULL,
    Game2 INT NULL,
    Game3 INT NULL,
    Game4 INT NULL,
PRIMARY KEY (PlayerID)
);

答案 3 :(得分:0)

您应该写这样的东西:

creat table Bowling_score(Playerid int, Firstname varchar(100), Lastname varchar(100), Game1 int, Game2 int, Game3 int);