SQL 创建时出现语法错误 table

SQL syntax error when creating table

我使用 MySQL 5.6 命令行客户端创建一个简单的数据库,我可以创建数据库来创建我的第一个 table 我有一个无法识别的语法错误。感谢您的帮助,如果有英语拼写错误,我深表歉意,因为它不是我的母语。 请找到粘贴的 SQL 语法错误:

mysql> USE SYLVAINTEST
Database changed
mysql> CREATE TABLE students
    ->   (
->      studentid INT NOT NULL,
->      firstname VARCHAR,
->      lastname  VARCHAR,
->      dob       VARCHAR,
->      CONSTRAINT pk_students PRIMARY KEY (studentid)
->   );

ERROR 1064 (42000): 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 ' lastname VARCHAR, dob VARCHAR, CONSTRAINT pk_students ' at line 4

mysql> CREATE TABLE students
->   (
->   studentid  INT  NOT NULL,
->   firstname  VARCHAR    ,
->   lastname  VARCHAR    ,
->   dob VARCHAR ,
->   CONSTRAINT pk_students PRIMARY KEY (studentid)
->   );

ERROR 1064 (42000): 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 ' lastname VARCHAR , dob VARCHAR , CONSTRAINT pk_students PRIMARY KEY (' at line 4

您应该在下面为 VARCHAR() 指定长度:

CREATE TABLE students
    (
    studentid INT NOT NULL,
    firstname VARCHAR(40),
    lastname  VARCHAR(40),
    dob       VARCHAR(20),
    CONSTRAINT pk_students PRIMARY KEY (studentid)
 );

您缺少 VARCHAR 数据类型的长度

CREATE TABLE students
      (
     studentid INT NOT NULL,      firstname VARCHAR(100),      
     lastname  VARCHAR(100),
     dob  VARCHAR(20),
     CONSTRAINT pk_students PRIMARY KEY (studentid)
      );

还要确保使用正确的日期时间数据类型来存储数据时间值