创建 mysql table 时出现错误 1064 (42000)
ERROR 1064 (42000), when creating a mysql table
我正在尝试创建一个 table,但它给我这个错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax touse near ' 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)
);
这是一个明显的错误:
PlayerID, INT NOT NULL AUTO_INCREMENT
你有一个多余的逗号。应该是:
PlayerID INT NOT NULL AUTO_INCREMENT
也不要在 SQL 语句的下一行加上逗号!
这里有一个关于语法错误消息的提示:该消息告诉您错误在哪里。
check the manual that corresponds to your MySQL server version for the right syntax to use near ' 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手册篇幅大,很容易想到"I don't know where the right page is."慢慢就可以了解手册的组织方式了。注意左栏中链接的层次结构。如有疑问,只需对 "mysql create table syntax".
这样的短语使用 Google
您应该能够自己回答简单的语法错误,而不是发布到 Stack Overflow。您会更快得到答案!
这应该有效。 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)
);
你应该这样写:
creat table Bowling_score(Playerid int, Firstname varchar(100), Lastname varchar(100), Game1 int, Game2 int, Game3 int);
我正在尝试创建一个 table,但它给我这个错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax touse near ' 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)
);
这是一个明显的错误:
PlayerID, INT NOT NULL AUTO_INCREMENT
你有一个多余的逗号。应该是:
PlayerID INT NOT NULL AUTO_INCREMENT
也不要在 SQL 语句的下一行加上逗号!
这里有一个关于语法错误消息的提示:该消息告诉您错误在哪里。
check the manual that corresponds to your MySQL server version for the right syntax to use near ' 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手册篇幅大,很容易想到"I don't know where the right page is."慢慢就可以了解手册的组织方式了。注意左栏中链接的层次结构。如有疑问,只需对 "mysql create table syntax".
这样的短语使用 Google您应该能够自己回答简单的语法错误,而不是发布到 Stack Overflow。您会更快得到答案!
这应该有效。 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)
);
你应该这样写:
creat table Bowling_score(Playerid int, Firstname varchar(100), Lastname varchar(100), Game1 int, Game2 int, Game3 int);