1.mysql 表的类型
CREATE TABLE IF NOT EXISTS mytest
(
id INT NOT NULL,
name varchar(20) NOT NULL
)ENGINE=MyISAM DEFAULT CHARACTER SET UTF8 ;
(1),ISAM数据表
这是3.23版本之前的MySQL支特的唯一一种表类型,目前己经过时,MyIASM处理程库逐步取代了ISAM处理程序,这种老式的表类型己经没有人在用了
(2),MyIASM数据表
• 这是目前中MySQL默认使用的数据表类型。其优点是
• 如果主机操作系统支持大尺寸文件,数据表长度就能够很大,就能客纳更多的数据.
• 数据表内容独立于硬件也就是说可以把数据表在机器之间随意拷贝
• 提高了索引方面的功能
• 提供了更好的索引键压缩效果
• auto_incremnet能力加强
• 改进了对数据表的完整性检查机制
• 支持进行fulltext全文本搜索
(3),Merge数据表
这是一种把相同结构的MyIASM数据表组织为一个逻辑单元的方法
(4),HEAP数据表
这是一种使用内存的数据表,而且各个数据行的长度固定,这两个特性使得这种类型数据表的检索速度非常快,作为一种临时性的数据表,HEAP在某些特定情况下很有用。
(5),BDB数据表
这种数据表支持事务处理机制具有良好的并发性能
(6),InnoDB数据表
这是最近加入MySQL的数据表类型,有许多新的特性支持事务处理机制崩溃后能够立刻恢复
支持外键功能,包括级联删除具有并发功能
(7)数据表在硬盘上的文件存储方式
IASM Frm isd ism
MyISAM Frm myd myi
Merge Frm mrg
Heap Frm
BDB Frm db
InnoDB frm
2.创建表时的参数类型
create table xindi(
name varchar(10),
phone int,
email varchar(12),
id int not null auto_increment,
primary key(id));
下面是创建数据表时所用的参数选项:
Primary Key
具有Primary Key限制条件的字段用于区分同一个数据表中的不同记录。
Auto_Increment
具有Auto_Increment限制条件的字段值从1开始,每增加一条新记录,值就会相应地增加1。一般来说,我们可以把Auto_Increment字段作为数据表中每一条记录的标识字段。
NOT NULL
NOT NULL限制条件规定用户不得在该字段中插入空值。