lesson4 表字段修改&表关系

表结构修改:

修改表名:ALTER TABLE tb_name RENAME TO new_name;
修改字段名:ALTER TABLE tb_name CHANGE COLUMN old_name new_name;
修改字段类型:ALTER TABLE tb_name MODIFY COLUMN field_name data_type;
添加字段:ALTER TABLE tb_name ADD COLUMN field_name data_type;
删除字段:ALTER TABLE tb_name DROP COLUMN field_name;

约束条件:

default 默认
not null 非空
unique key 唯一
auto_increment 自增长 
auto_increment=100;
设置自增长从100开始增长,【注意truncate与delete对自增长的区别】
primary key 主键 (唯一非空)
foreign key 外键
一对一关系:
像QQ、微信快捷注册第三方网站支持一键注册,而这些网站只需要用户的帐号的基本信息,
而不需要你本身在QQ、微信上的详细信息,游戏,空间,朋友等。这个时候就需要外键来
建立一张简单的抽象用户信息的表,供其调用。
一对多关系:
像课程就只有python零基础学习、jave零基础学习等几门课,而学生有上万人,如果将课程
这个字段与学生信息弄在一个表中,那样数据冗余重复,也浪费资源;就需要外键来单独给
课程名做一张表。而主表只用与外键表ID关链,数字ID相对与课程中文字符,大大节省空间。
多对多关系:需要用到中间表,联合主键 primary key(课程ID,学生ID)。
如大学选修课程,一个学生可以选择多个课程,同时同一课程也可以被多个学生选择。
一对多示例:学生表外键,课程表
            creat table course(
                nid int not null primary key,
                c_name char(16) not null
            );

            create table students(
                nid int not null primary key,
                name char(32) null ,
                cou_id int not null,
                constraint fk_cc foreign key (cou_id) references course(nid)
            ) ;  --fk_cc 为这条记录的别名,可随意起。

你可能感兴趣的:(lesson4 表字段修改&表关系)