此mysql语句有什么问题?

问题描述 投票:0回答:2

我想执行以下语句来创建一个用于存储各种详细信息的表。此处将存储电影的名称“ Ratings in integer value”,请帮我解决此问题

CREATE TABLE users (
    id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(50) NOT NULL UNIQUE,
    password VARCHAR(255) NOT NULL,
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
    website VARCHAR,
    aboutyou VARCHAR,
    gender VARCHAR(50) NOT NULL,
    avengers INT NOT NULL,
    inception INT NOT NULL,
    godfather INT NOT NULL,
    mrrobot INT NOT NULL,
    xfiles INT NOT NULL,
    friends INT NOT NULL
);

我从phpmyadmin得到错误:

MySQL说:文档

#1064-您的SQL语法有误;检查与您的MariaDB服务器版本相对应的手册,以在'aboutyou VARCHAR附近使用正确的语法,性别VARCHAR(50)NOT NULL,第6行复仇者INT NOT'

mysql database mysql-error-1064 create-table
2个回答
0
投票

好吧,我想如果您仔细看一下查询,您自己会理解的!

我猜这是由于您没有为字符串的长度提供VARIABLE而引起的。您仅指定要使用VARCHAR作为列网站和aboutyou的数据类型。但是正确的格式是VARCHAR(n),其中n是您希望字符串成为的字符数。我尝试自己实现它,当我给括号内的数字时,它可以很好地工作。

一个例子,尝试:

CREATE TABLE users (
    id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(50) NOT NULL UNIQUE,
    password VARCHAR(255) NOT NULL,
    created_at VARCHAR(5),
    website VARCHAR(55),
    about_you VARCHAR(255),
    gender VARCHAR(50) NOT NULL,
    avengers INT NOT NULL,
    inception INT NOT NULL,
    godfather INT NOT NULL,
    mrrobot INT NOT NULL,
    xfiles INT NOT NULL,
    friends INT NOT NULL
);

我希望能帮助您回答问题。祝您的项目好运!


0
投票

像对待性别一样给予他们足够的长度,它将起作用。

 website VARCHAR(50),
 aboutyou VARCHAR(50),

 gender VARCHAR(50) NOT NULL,
© www.soinside.com 2019 - 2024. All rights reserved.