注:都是mysql语句,若是其他关系数据库的特定语句,就不写了。
1-4 表的创建
数据库的创建
CREATE DATABASE <数据库名称>;
CREATE DATABASE shop;
表的创建
CREATE TABLE <表名>
(<列名1> <数据类型> <该列所需约束>,
<列名2> <数据类型> <该列所需约束>,
<列名3> <数据类型> <该列所需约束>,
<列名4> <数据类型> <该列所需约束>,
.
.
.
<该表的约束1>, <该表的约束2>,……);
CREATE TABLE Product
(product_id CHAR(4) NOT NULL,
product_name VARCHAR(100) NOT NULL,
product_type VARCHAR(32) NOT NULL,
sale_price INTEGER ,
purchase_price INTEGER ,
regist_date DATE ,
PRIMARY KEY (product_id));
注:约束可以在定义列的时候进行设置,也可以在语句的末尾进行设置,但是NOT NULL约束只能以列为单位进行设置
命名规则:只能使用半角英文字母、数字、下划线(_)作为数据库、表和列的名称,名称必须以半角英文字母开头,名称不能重复,在同一个数据库中不能创建两个相同名称的表,在同一个表中也不能创建两个名称相同的列。
数据类型:所有的列都必须指定数据类型。数据类型表示数据的种类,包括数字型、字符型和日期型等。
四种基本的数据类型:INTEGER、CHAR(定长字符串,当列中存储的字符串长度达不到最大长度的时候,使用半角空格进行补足)、VARCHAR(可变长字符串,即使字符数未达到最大长度,也不会用半角空格补足)、DATE
约束:约束是除了数据类型之外,对列中存储的数据进行限制或者追加条件的功能。
非空NOT NULL 唯一 UNIQUE 主键PRIMARY KEY(唯一+非空)
外键(FOREIGN KEY) 默认值(DEFAULT) 自增(AUTO_INCREMENT)
备注:COMMENT
1-5 表的删除和更新
表的删除
DROP TABLE <表名>;
DROP TABLE Product;
表定义的更新
添加列
ALTER TABLE <表名> ADD COLUMN <列的定义>;
#好像mysql也可以不要COLUMN啊?
删除列
ALTER TABLE <表名> DROP COLUMN <列名>;
重命名
RENAME TABLE Poduct TO Product;