《mysql必知必会》读书实战笔记21-创建表和操作表

第21章 创建和操纵表

21.1 创建表

21.1.1表创建基础

创建一张客户表customers1:
create table customers1 
(
  cust_id           int not null auto_increment,
  cust_name     char(50) not null,
  cust_address char(50) null,
  primary key (cust_id)
);

《mysql必知必会》读书实战笔记21-创建表和操作表_第1张图片

create table  if not exists customers1 #如果辨明不存在时创建表
(cust_id int not null auto_increment,
cust_name char(51) not null,
primary key (cust_id)
); 

21.1.2 NULL  是否允许空值

21.1.3 主键

primary key (字段名),主键值必须唯一,不能用允许空值null的字段。

21.1.4 自增长属性

auto_increment

select last_insert_id(); 查上一次自动增加的ID值。

21.1.5 指定默认值

default 1 #default后只能跟常量,不能是函数。

21.1.6 数据库引擎类型

engine=innoDB 事务处理引擎,不支持全文本搜索

engine=myISAM 支持全文本搜索

ENGINE=MEMORY内存引擎,功能=myISAM

21.2更新修改表

alter table 使用要极其小心,在使用前应该做一个完整备份,包括模式和数据。

例:在供应商表添加一列vendor_phone:
alter table vendors add vend_phone char(20);

《mysql必知必会》读书实战笔记21-创建表和操作表_第2张图片

例:删除刚才添加的列:alter table vendors drop column vend_phone;

《mysql必知必会》读书实战笔记21-创建表和操作表_第3张图片

alter另一个功能是,定义外键

alter table orderitems
add constraint fk_orderitems_orders
foreign key (order_num) references orders (order_num);

删除主键?

删除外键?

21.3 删除表

drop table [表名];    #删除整表而不是数据,无法撤销恢复。

21.4 重命名表

rename table 表名1 to 表名2;


《mysql必知必会》是一本好书,是一本sql语言入门书,豆瓣评分很高。

作者是英国的Ben Forta,世界知名的技术作家,由人民邮电出版社发行,我觉得原作名: MySQL Crash Course,直译为:《MYSQL速成》更具畅销书潜质,只是比较俗吧,呵呵。

书中从介绍简单的数据检索开始,逐步深入一些复杂的内容,包括联结的使用、子查询、正则表达式和基于全文本的搜索、存储过程、游标、触发器、表约束,等等。

前三章是基础概念,讲了SQL和数据库的基本概念,Mysql数据库的概念和使用方法,第四章开始SQL实操练习,这里是本书的一些实操练习笔记,有兴趣的话可以按这个练习几遍,相信对新手会很有帮助,让你不经意间功力大增。

你可能感兴趣的:(《mysql必知必会》读书实战笔记21-创建表和操作表)