标签:
1)创建表的语法形式
首先,选择数据库:
USE 数据库名;
创建表:
CREATE TABLE 表名 (属性名 数据类型 [完整性约束条件],
属性名 数据类型 [完整性约束条件],
属性名 数据类型
);
2)设置表的主键
主键用于标识每一个记录, 主键必须唯一。
单字段主键: 主键是由一个字段构成的
语法规则: 属性名 数据类型 PRIMARY KEY 例子: CREATE TABLE example1(stu_id INT PRIMARY KEY, stu_name VARCHAR(20), stu_sex BOOLEAN );
多字段主键:主键由多个属性组合而成,在属性定义完之后统一设置主键
语法: PRIMARY KEY (属性名1, 属性名2,... , 属性名n) 例子: CREATE TABLE example2( stu_id INT, course_id INT, grade FLOAT, PRIMARY KEY(stu_id, course_id) );
3)设置表的外键
CREATE TABLE example2( stu_id INT, course_id INT, grade FLOAT, PRIMARY KEY(stu_id, course_id) ); 在example3表中设置stu_id 和course_id 为外键,与之相关联的example1表中的主键stu_id和course_id CREATE TABLE example3( id INT PRIMARY KEY, stu_id INT, course_id INT, CONSTRAINT c_fk FOREIGN KEY (stu_id, course_id) REFERENCES example2(stu_id, course_id) );
运行后,example3表中包含3个字段,其中,id字段是主键;stu_id和course_id字段为外键; c_fk是外键的别名;
example2表称为example3表的父表;example3表的外键依赖于父表example3的主键stu_id和course_id
4)表的非空约束
非空约束:在创建表的某些特殊字段加上 NOT NULL 约束条件
CREATE TABLE example4( id INT NOT NULL PRIMARY KEY, name VARCHAR(20) NOT NULL, stu_id INT, CONSTRAINT d_fk FOREIGN KEY (stu_id) REFERENCES example1(stu_id) );
5)表的唯一性约束
唯一性:所以记录中该字段的值不能重复出现
CREATE TABLE example5( id INT PRIMARY KEY, stu_id INT UNIQUE, name VARCHAR(20) NOT NULL );
6)设置表的属性值自动增加
AUTO_INCREMENT用于为表中插入的新记录自动生成唯一的ID,一个表只能有一个字段使用AUTO_INCREMENT约束,并且该字段必须为主键的一部分。
CREATE TABLE example6( id INT PRIMARY KEY AUTO_INCREMENT, stu_id INT UNIQUE, name VARCHAR(20) NOT NULL );
7)设置表的属性的默认值
可以为表的字段指定默认值,如果插入一条新的记录时没有为这个字段赋值,那么数据库系统会自动为这个字段插入默认值,默认值通过DEFAULT关键字设置。
CREATE TABLE example7( id INT PRIMARY KEY AUTO_INCREMENT, stu_id INT UNIQUE, name VARCHAR(20) NOT NULL, English VARCHAR(20) DEFAULT ‘zero‘, Math FLOAT DEFAULT 0, Computer FLOAT DEFAULT 0 );
查看表基本结构 : DESCRIBE 表名; 或缩写 DESC 表名; 查看详细结果: SHOE CREATE TABLE 表名; SHOE CREATE TABLE 表名 \G
修改表名: ALTER TABLE 旧表名 RENAME [TO] 新表名; 修改字段数据类型: ALTER TABLE 表名 MODIFY 属性名 数据类型; 修改字段名:ALTER TABLE 表名 CHANGE 旧属性名 [新数据类型]; 增加字段: ALTER TABLE 表名 ADD 属性名1 数据类型 [完整性约束条件] [FIRST | AFTER 属性名2]; 删除字段: ALTER TABLE 表名 DROP 属性名; 修改字段的排列位置: ALTER TABLE 表名 MODIFY 属性名1 数据类型 FIRST | AFTER 属性名2; (说明: FIRST指定位置为表的第一个位置; AFTER 属性名2 指定属性名1 插入在属性名2 之后) 更改表的存储引擎:ALTER TABLE 表名 ENGINE=存储引擎(InnoDB, MyISAM, MEMORY); 删除表的外键约束: ALTER TABLE 表名 DROP FOREIGN KEY 外键别名;
删除没有被关联的普通表: DROP TABLE 表名; 删除被其他表关联的父表:
第一种方法: 先删除子表,再删除父表; 第二种方法:先删除子表的外键约束,再删除父表;
标签:
原文地址:http://www.cnblogs.com/zxqstrong/p/5391648.html