MySQL正在创建表,如果行为空,则返回特定值
我正在尝试创建一个简单的数据库: 学生MySQL正在创建表,如果行为空,则返回特定值,mysql,sql,normalization,Mysql,Sql,Normalization,我正在尝试创建一个简单的数据库: 学生 第一个名称(不能为空) 姓氏(不能为空) 区域(如果为空,则返回“未知”) 我使用了以下代码: CREATE TABLE Students ( First_name VARCHAR(50) NOT NULL, Last_name VARCHAR(50) NOT NULL, //And my wild guess: Region VARCHAR(50) ISNULL(Region, "unknown") ) 不起作用:(知道为什么吗?使
- 第一个名称(不能为空)
- 姓氏(不能为空)
- 区域(如果为空,则返回“未知”)
CREATE TABLE Students
(
First_name VARCHAR(50) NOT NULL,
Last_name VARCHAR(50) NOT NULL,
//And my wild guess:
Region VARCHAR(50) ISNULL(Region, "unknown")
)
不起作用:(知道为什么吗?使用
default
CREATE TABLE Students
(
First_name VARCHAR(50) NOT NULL,
Last_name VARCHAR(50) NOT NULL,
Region VARCHAR(50) NOT NULL default 'unknown'
)
另外,别忘了指定主键!谢谢你的快速回答!我没有!:D我只是没有在这里显示它,出于好奇,ENGINE=InnoDB是什么?谢谢:)关于创建数据库和使用它也很有帮助,就像你在读我的心思一样!
drop database if exists studentsdb;
create database studentsdb;
use studentsdb;
CREATE TABLE Students(
id VARCHAR (10) NOT NULL,
First_name VARCHAR ( 50 ) NOT NULL,
Last_name VARCHAR( 50 ) NOT NULL,
Region VARCHAR( 20 ) NOT NULL default 'unknown',
PRIMARY KEY (id)
) ENGINE=InnoDB;