我的SQL代码出了什么问题?在第9行获得错误

Rya*_*yan 0 sql

我正在尝试将下面的代码导入MySQL数据库.但是它说我在第9行有一个涉及')'令牌的错误.知道怎么解决吗?错误信息是:

您的SQL语法有错误; 检查与您的MySQL服务器版本对应的手册,以便在第9行的')'附近使用正确的语法
.您的SQL语法中有错误; 检查与MySQL服务器版本对应的手册,以便在第6行使用')'附近的正确语法
.您的SQL语法中有错误; 检查与您的MySQL服务器版本相对应的手册,以便在第10行附近的')'附近使用正确的语法

CREATE TABLE user_types (
    id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(64),
    description VARCHAR(255),
    rank INT UNSIGNED NOT NULL DEFAULT 1
);

CREATE TABLE users (
    id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(64),
    email VARCHAR(64) NOT NULL,
    password VARCHAR(255) NOT NULL,
    ip_address VARCHAR(255),
    user_agent VARCHAR(255),
    type INT UNSIGNED NOT NULL DEFAULT 1,
    first_name VARCHAR(64),
    last_name VARCHAR(64),
    biography TEXT,
    dob_month INT UNSIGNED,
    dob_year INT UNSIGNED,
    dob_day INT UNSIGNED,
    interests VARCHAR(255),
    gender VARCHAR(64),
    created INT UNSIGNED NOT NULL
);

CREATE TABLE sessions (
    id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
    user_id INT UNSIGNED NOT NULL,
    ip_address VARCHAR(255),
    user_agent VARCHAR(255),
    created INT UNSIGNED NOT NULL,
    last_activity INT UNSIGNED NOT NULL DEFAULT 0
);
Run Code Online (Sandbox Code Playgroud)

Bry*_*yan 6

CREATE TABLE在最后一列之后,有几个语句有一个尾随逗号,应该删除它.

例如:

CREATE TABLE announcements (
    id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
    user_id INT UNSIGNED NOT NULL,
    title VARCHAR(255),
    content TEXT,
    labels VARCHAR(255),
    created INT UNSIGNED NOT NULL,
    archived INT(1) NOT NULL DEFAULT 0,
);
Run Code Online (Sandbox Code Playgroud)

应该:

CREATE TABLE announcements (
    id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
    user_id INT UNSIGNED NOT NULL,
    title VARCHAR(255),
    content TEXT,
    labels VARCHAR(255),
    created INT UNSIGNED NOT NULL,
    archived INT(1) NOT NULL DEFAULT 0
);
Run Code Online (Sandbox Code Playgroud)

通过这些更改,架构在SQL Fiddle上成功构建.