下面一起来了解下操作mysql数据库表的基本方法,相信大家看完肯定会受益匪浅,文字在精不在多,希望操作mysql数据库表的基本方法这篇短内容是你想要的。
表的操作
表示数据库存储数据的基本单位,由若干个字段组成,主要用来存储数据记录,表的操作是增删改查,这是最基本的操作,也是最重要的操作
创建表
语法创建表的表名
(字段1类型[(宽度)约束条件),
,字段n类型[(宽度)约束条件)
);
在同一张表中字段名不能相同
宽度和约束条件是可选的
字段名和类型是必须的
,
实例:
使用学校创建表学生
(名字char (10),
性char (8),
int(3)时代,
密码varchar (50)
);
查看表结构
描述表名;
Desc表名;
显示创建表的表名; //查看表详细结构
表完整性约束为了保障数据的完整性一致性和准确性
关键字primkary key 主键, 唯一标识的一个记录
Foreign key 外键 ,做关联
No null 非空
Unique key 唯一约束,这本身就是一个索引
Default 默认值
Auto_increment 自增长
实例:
Use school
Create table student
(name char(10) not null,
Sex enum (‘male’,’female’), default ‘male’ not null
Age int unsigned not null default 18, //unsigned修饰值必须为正值
Hobby set (‘music’,’book’,’disc’) default ‘book,disc’
);
设置唯一约束实例:unique
Create table departtment(
Dept_id int,
Dept_name varchar(30) unique,
Comment varchar(50)
);
设置主键约束实例:primary key非常重要,唯一标识符,这本身就是一条索引
使用单列做主键
Create table departtment(
Dept_id int primary key,
Dept_name varchar(30) ,
Comment varchar(50)
);
使用多列做主键,也就是复合主键,也就是说这两个共同一起是不能有相同的数据的
Create table departtment(
Dept_id int ,
Dept_name varchar(30),
Comment varchar(50),
Constraint pk_id_name primary key (dept_id,dept_name)
);
设置自增长auto_increment 自增长通常都是配合主键共同使用的,而且这个字段必须是整数类型才行
Create table student(
Dept_id int primary auto_increment,
Dept_name varchar(30),
Comment varchar(50)
);
设置外键约束foreign key主要做表的关联,这里就涉及到父子表的概念,外键必须要存储引擎来支撑的,所以必须要确保存储引擎是innodb才行
实例
父表
Create table empolyees(
Name varchar(20) not null,
Mail varchar (20),
Primary key (name)
)engine=innodb;
子表
Create table pryroll(
Id int(5) not null,
Name varchar(20) not null,
Payroll float (10,2) no null,
Primary key (id),
Constraint fk_name foreign key (name) references employees (name)
on udate cascade
on delete cascade //字表中的name跟employees 表的name字段关联,并且同步删除更新,父表中有那个人,子表中才能够插入,不然是不行的
)engine=innodb;
修改表
修改表名
Alter table 旧表名 rename 新表名
实例:
Alter table stu rename student; ,//将stu表改名学生为
Alter table学生=myisam引擎;,//修改学生表的存储引擎为myisam
增加字段
Alter table表名
,添加字段名数据类型(完整性约束条件.....],
添加字段名数据类型(完整性约束条件.....];
默认情况下新增加的字段是放在所有字段后面的
实例:
Alter table学生添加名字varchar(30)不是null,
添加int not null;时代,
Alter table表名
添加字段名数据类型(完整性约束条件.....]第一;
实例:
添加stu_num varchar (30) not null;
Alter table表名
添加字段名数据类型(完整性约束条件.....]字后段名;
实例:
添加passord, varchar (30) not null名称;之后,
删除字段
改变table 表名drop 字段名;
实例:
Alter table学生stu_num下降;,
修改字段
改变table 表名modify 字段名数据类型(完整性约束条件……);//只能针对旧有的字段操作只能改名,