表的创建
一、重点内容总结
1、表通过CREATE TABLE语句创建而成
2、表和列的命名要使用有意义的文字
3、指定列的数据类型(整数型、字符型和日期型等)
4、可以在表中设置约束(主键约束和NOT NULL约束等)
二、数据库的创建(CREATE DATABASE语句)
在创建表之前,一定要先创建用来存储表的数据库
运行CREATE DATABASE语句就可以在RDBMS上创建数据库了
CREATEDATABASE语句的语法如下所示:
创建数据库的CREATE DATABASE语句
CREATE DATABASE <数据库名称>;
创建数据库shop的CREATE DATABASE语句:CREATE DATABASE shop
此外,数据库名称、表名以及列名都要使用半角字符(英文字母、数字、符号)
三、表的创建(CREATE TABLE语句)
创建好数据库之后,接下来我们使用CREATE TABLE语句在其中创建表
CREATE TABLE语句的语法如下所示:
创建表的CREATE TABLE语句:
CREATE TABLE <表名>
(<列名1> <数据类型> <该列所需约束>,
<列名2> <数据类型> <该列所需约束> ,
<列名3> <数据类型><该列所需约束>,
<列名4> <数据类型><该列所需约束>,
<该表的约束1>, <该表的约束2, ....);
创建shopping表的CREATE TABLE语句
CREATE TABLE shopping
(shopping_id CHAR(4) NOT NULL,
shopping_name VARCHAR(100) NOT NULL,
shopping_type VARCHAR(32) NOT NULL,
sale_price INTEGER ,
purchase_price INTEGER ,
regist_date DATE ,
PRIMARY KEY (shopping_id));
四、命名规则
1、数据库名称、表名和列名等可以使用以下三种字符:
1)半角英字母
2)半角数字
3)下划线(_)
2、此外,名称必须以半角英文字母开头
3、名称不能重复
在同一个数据库中不能创建两个相同名称的表,在同一个表中也不能创建两个名称相同的列
五、数据类型的指定
数据类型表示数据的种类,包括数字型、字符型和日期型等
每一列都不能存储与该列数据类型不符的数据,如声明为整数型的列中不能存储"abc'这样的字符串
1、INTEGER型
用来指定存储整数的列的数据类型(数字型),不能存储小数
2、CHAR型
CHAR是CHARACTER (字符)的缩写,是用来指定存储字符串的列的数据类型(字符型)
表中存储的字符串是区分大小写的, 'ABC'和'abc'代表了两个不同意义的字符串
3、VARCHAR型
VARCHAR型也是用来指定存储字符串的列的数据类型(字符串类型),也可以通过括号内的数字来指定字符串的长度(最大长度)
但该类型的列是以可变长字符串的形式来保存字符串的,该类型的列中存储的字符串也区分大小写的
4、DATE型
用来指定存储日期(年月日)的列的数据类型(日期型)
六、约束的设置
约束是除了数据类型之外,对列中存储的数据进行限制或者追加条件的功能
shopping_id CHAR(4) NOT NULL,
shopping_name VARCHAR(100) NOT NULL,
shopping_type VARCHAR(32) NOT NULL,
数据类型的右侧设置了NOT NULL约束。NULL是代表空白(无记录)的关键字
给该列设置了不能输入空白,也就是必须输入数据的约束(如果什么都不输入就会出错)
在创建Product表的CREATE TABLE语句的后面,还有 下面这句
PRIMARY KEY (shopping_id));
这是用来给shopping_id列设置主键约束的。所谓键,就是在:定特定数据时使用的列的组合
键种类多样,主键(primary key)就是以特定一行数据的列
也就是说,如果把shopping_id列指定为主键就可以通过该列取出特定的商品数据了
反之,如果向shopping_id列中输入了重复数据,就无法取出一的特定数据了