0

我运行了这个 SQL 命令

CREATE TABLE TEST(
    KEY char(10) UNIQUE NOT NULL,

    PRIMARY KEY(KEY)
);

它给了我这个错误:

2: Unexpected token: UNIQUE in statement [CREATE TABLE TEST(
KEY char(10) UNIQUE]

我只是想从 SQL 命令创建一个简单的表。这是我得到的错误,这似乎很奇怪,因为这将在 MS 访问时完美运行。

有任何解决这个问题的方法吗?

//编辑

由于“Key”是 SQL 中的限制词,我又试了一次。

CREATE TABLE TEST(
    MLP char(10) UNIQUE NOT NULL,

    PRIMARY KEY(MLP)
);

然而,它似乎又被打破了。

 5: Unexpected token: UNIQUE in statement [CREATE TABLE TEST(
MLP char(10) UNIQUE]
4

3 回答 3

2

我不确定这一点,但请尝试删除“唯一”参数。因为如果您将 MLP 定义为键,则意味着它是唯一的,但 SQL 将“KEY”和“UNIQUE”视为不兼容的。

于 2015-07-23T14:43:21.320 回答
1

KEY是 SQL 中的保留字。为您的列选择另一个名称,它应该可以正常工作。

官方教程使用如下语法:

CREATE TABLE TEST(
    MLP CHAR(10) NOT NULL PRIMARY KEY
);
于 2015-07-23T14:31:04.030 回答
0

尝试重新启动 SQL 服务器,因为您提供的确切代码在我尝试时可以正常工作。此外,删除数据库中与 TEST 同名的任何类型的列

于 2015-07-23T14:40:34.327 回答