如何在 MySQL 中创建表?

Posted

技术标签:

【中文标题】如何在 MySQL 中创建表?【英文标题】:How to create a table in MySQL? 【发布时间】:2018-09-07 06:12:52 【问题描述】:

我尝试在 mysql 中开发一个表,我尝试满足要求但似乎无法修复指定的错误。要求是:

表格名称:车辆

reg_no: VARCHAR(8) NOT NULL,

类别:ENUM('car', 'truck') NOT NULL DEFAULT 'car',

品牌:VARCHAR(30) NULL DEFAULT '',

说明:VARCHAR(256) NULL DEFAULT '',

照片:BLOB NULL,

daily_rate: DECIMAL(6,2) NOT NULL DEFAULT 9.99

我附上了我如何尝试创建这个表的截图,还附上了错误的截图。SQLSQLError

【问题讨论】:

你听说过MySQL文档吗???? 【参考方案1】:

在您的屏幕截图“SQL”中,您错过了 Car 和 Truck 之间的逗号(在“长度/值”字段中)

【讨论】:

【参考方案2】:

刚刚尝试使用sqlfiddle 和以下代码,它可以工作。

create table vehicles (
reg_no VARCHAR(8) NOT NULL,
category ENUM('car', 'truck') NOT NULL DEFAULT 'car',
brand VARCHAR(30) NULL DEFAULT '',
description VARCHAR(256) NULL DEFAULT '',
photo BLOB NULL,
daily_rate DECIMAL(6,2) NOT NULL DEFAULT 9.99
);

我只是将您的描述排除在外并进行了编辑,使其符合 MySQL 语法

【讨论】:

【参考方案3】:

你应该删除DEFAULT 'car'

如果声明一个 ENUM 列允许 NULL,则 NULL 值是该列的有效值,默认值为 NULL。如果 ENUM 列声明为 NOT NULL,则其默认值为允许值列表的第一个元素。

来源MySQL Doc

【讨论】:

以上是关于如何在 MySQL 中创建表?的主要内容,如果未能解决你的问题,请参考以下文章

如何在数据库中创建表

如何在 MySQL 中创建表别名

mysql怎么建库建表

MYSQL数据库建表出错!!!

MYSQL数据库建表出错

在mysql中创建表时使用变量作为表名