MariaDB 语法错误

Posted

技术标签:

【中文标题】MariaDB 语法错误【英文标题】:MariaDB syntax error 【发布时间】:2016-02-16 19:44:26 【问题描述】:
CREATE TABLE movie(
id int() NOT NULL AUTO_INCREMENT,
name varchar() NOT NULL,
type int() NOT NULL default 0,
year int() NOT NULL default 0,
leadactor int() NOT NULL default 0,
director int() NOT NULL default 0,
PRIMARY KEY(id),
KEY type(type.year)
);

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ') NOT NULL AUTOINCREMENT default 0, name varchar() NOT NULL default 0, type ' at line 2

我不知道如何解决这个问题。我正在使用最新的 xampp 版本。

【问题讨论】:

【参考方案1】:

int 之后删除() 或包含一个数字。 varchar() 需要一个值。而且,最后一行的句点应该是逗号:

CREATE TABLE movie (
    id int NOT NULL AUTO_INCREMENT,
    name varchar(255) NOT NULL,
    type int NOT NULL default 0,
    year int NOT NULL default 0,
    leadactor int NOT NULL default 0,
    director int NOT NULL default 0,
    PRIMARY KEY(id),
    KEY type(type, year)
);

Here 是一个 SQL Fiddle。

【讨论】:

以上是关于MariaDB 语法错误的主要内容,如果未能解决你的问题,请参考以下文章

SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MariaDB 对应的手册

多语句中的 Mariadb 语法错误

MariaDB 未知语法错误。制作一个简单的表格[重复]

SQL 语法错误:您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册

phpmyadmin MariaDb 更改表语法错误

SQL语法错误。请我检查MariaDB服务器的手册