MySQL学习笔记第二课 重点 修改表

时间:2023-02-10 15:33:20

1/什么是DBMS    数据库管理系统

2/关系型数据库   

3/   设置sql的编译模式:    ----> Set   sql_mode = `strict_trans_tables`;  

4/   时间戳 ?

5/   数据库移植 ?

6/   unsigned  不允许存负数,相当于正数部分扩大一倍

desc  表名;      查看表的结构;

show    create    table    表名   ;  展示创建表的语句;

auto_increment     自动增长   ;

alter    table   表名   auto_increment  =  数值  ;           设置某个表从某个数 开始自动增加 ;

set     @@auto_increment_increment = 数值  ;           设置自动增长的全局变量  ;   

7/delete   from   表名  ;        删除某个表里的数据;

truncate      表名;              删除了某个表的数据;       但会使其id归零;

8/       注释     在sql语句里注释添加时    给表添加注释在尾部分号前     加 comment =   `注释内容`;    在列上加注释     在逗号前    加  comment       `注释`,       二者区别在等号的有无

9/       规范 ,   需要将 所有的约束放在 sql 语句末尾    括号内           如      create table  b (id int(4)  ,  name char(4)  ,   primary key(`id`)  )  ;    

10/      sql   语句注释     # 单行注释      /*   多行注释 */

11/      常见的数据库类型       InnoDB  擅长事务性 (如增删改操作较多)    安全性      MyISAM      擅长查询(如 查询操作比较多)   节约空间及相应速度

12/      外键约束     如果表A的主关键字是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。外键是用来实现参照完整性的。

13/modify能修改字段类型和约束,而change不能。 change用来字段重命名,不能修改字段类型和约束; modify不用来字段重命名,只能修改字段类型和约束;

[Err] 1068 - Multiple primary key defined 定义了两个主键 或者在修改之前已经有了主键~!

[Err] 1265 - Data truncated for column 'hbb' at row 1 数据被截断了 空间过小


ALTER TABLE hh add CONSTRAINT pk_hh primary key(no);   添加主键语句


alter table 表名 add constraint fk_表1_表2 foreign key (外键的名) reference 表名(字段名) ;

ALTER TABLE tb_student

ADD CONSTRAINT fk_student_class

FOREIGN KEY(`class_id`)

REFERENCES tb_class(`no`);