SQL 创建 table 时查询语法错误
SQL query syntax error while creating a table
我在创建 table 时收到 SQL 查询语法错误。这是 SQL 查询:
CREATE TABLE ACCOUNT (
ACCNO NUMBER(5) NOT NULL,
NAME VARCHAR(20) NOT NULL,
BA L NUMBER(8,2) NOT NULL,
CREATION-DT DATE NOT NULL,
PRIMARY KEY ( ACCNO )
);
这是错误:
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 'NUMBER(5) NOT NULL.
我的语法有什么问题?
NUMBER
不是 MySQL 中的有效数据类型,您应该从 list 中选择一个(也许您的意思是 NUMERIC
).
您还应该用反引号转义一些标识符(在您的例子中,列名 BA L
,其中包含一个 space,以及 CREATION-DT
,其中包含一个短划线)`
在 MySQL:
CREATE TABLE `ACCOUNT` (
`ACCNO` NUMERIC(5) NOT NULL,
`NAME` VARCHAR(20) NOT NULL,
`BA L` NUMERIC(8,2) NOT NULL,
`CREATION-DT` DATE NOT NULL,
PRIMARY KEY ( `ACCNO` )
);
使用 SQLfiddle 你可以看到这是无效的。
您的语法有多个问题; invalid data types, invalid column names,等等。您可以将无效名称封装在反引号中,但您必须记住稍后再封装它们。
而不是 Number
你可能意味着 numeric
但我建议尝试 Integer
代替。
或者试试这个:
CREATE TABLE ACCOUNT (
ACCNO INTEGER(5) NOT NULL,
NAME VARCHAR(20) NOT NULL,
BAL INTEGER(8) NOT NULL,
CREATIONDT DATE NOT NULL,
PRIMARY KEY ( ACCNO )
);
我在创建 table 时收到 SQL 查询语法错误。这是 SQL 查询:
CREATE TABLE ACCOUNT (
ACCNO NUMBER(5) NOT NULL,
NAME VARCHAR(20) NOT NULL,
BA L NUMBER(8,2) NOT NULL,
CREATION-DT DATE NOT NULL,
PRIMARY KEY ( ACCNO )
);
这是错误:
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 'NUMBER(5) NOT NULL.
我的语法有什么问题?
NUMBER
不是 MySQL 中的有效数据类型,您应该从 list 中选择一个(也许您的意思是 NUMERIC
).
您还应该用反引号转义一些标识符(在您的例子中,列名 BA L
,其中包含一个 space,以及 CREATION-DT
,其中包含一个短划线)`
在 MySQL:
CREATE TABLE `ACCOUNT` (
`ACCNO` NUMERIC(5) NOT NULL,
`NAME` VARCHAR(20) NOT NULL,
`BA L` NUMERIC(8,2) NOT NULL,
`CREATION-DT` DATE NOT NULL,
PRIMARY KEY ( `ACCNO` )
);
使用 SQLfiddle 你可以看到这是无效的。
您的语法有多个问题; invalid data types, invalid column names,等等。您可以将无效名称封装在反引号中,但您必须记住稍后再封装它们。
而不是 Number
你可能意味着 numeric
但我建议尝试 Integer
代替。
或者试试这个:
CREATE TABLE ACCOUNT (
ACCNO INTEGER(5) NOT NULL,
NAME VARCHAR(20) NOT NULL,
BAL INTEGER(8) NOT NULL,
CREATIONDT DATE NOT NULL,
PRIMARY KEY ( ACCNO )
);