mysql(三) 数据库表,mysql三:表操作

一、存储引擎介绍

存储引擎即表类型,mysql根据不同的表类型会有不同的处理机制

二、表介绍

表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段

id,name,qq,age称为字段,其余的,一行内容称为一条记录

三、创建表

语法:

create table 表名(

字段名1 类型[(宽度) 约束条件],

字段名2 类型[(宽度) 约束条件],

字段名3 类型[(宽度) 约束条件]

);

注意:

1. 在同一张表中,字段名是不能相同

2. 宽度和约束条件可选

3. 字段名和类型是必须的

举栗子:

create database db1 charset utf8;

use db1;

create table t1(

id int,

name varchar(50),

sex enum('male','female'),

age int(3)

);

show tables; #查看db1库下所有表名

desc t1;

select * from t1;

select id,name from t1;

insert into t1 values

(1,'egon',18,'male'),

(2,'alex',81,'female')

;

select * from t1;

注意:表中的最后一个字段不要加逗号

四、查看表结构

describe t1; #查看表结构,可简写为desc 表名

show create table t1\G; #查看表详细结构,可加\G

五、数据类型

http://www.cnblogs.com/linhaifeng/articles/7233411.html

六、表完整性约束

http://www.cnblogs.com/linhaifeng/articles/7238814.html

七、修改表ALTER TABLE

语法:

1、修改表名

ALTER TABLE 表名

RENAME 新表名;

2、增加字段

ALTER TABLE 表名

ADD 字段名  数据类型 [完整性约束条件…],

ADD 字段名  数据类型 [完整性约束条件…];

ALTER TABLE 表名

ADD 字段名  数据类型 [完整性约束条件…]  FIRST;

ALTER TABLE 表名

ADD 字段名  数据类型 [完整性约束条件…]  AFTER 字段名;

3、删除字段

ALTER TABLE 表名

DROP 字段名;

4修改字段

ALTER TABLE 表名

MODIFY  字段名 数据类型 [完整性约束条件…];

ALTER TABLE 表名

CHANGE 旧字段名 新字段名 旧数据类型 [完整性约束条件…];

ALTER TABLE 表名

CHANGE 旧字段名 新字段名 新数据类型 [完整性约束条件…];

示例:

1. 修改存储引擎

mysql> alter table service

-> engine=innodb;

2. 添加字段

mysql> alter table student10

-> add name varchar(20) not null,

-> add age int(3) not null default 22;

mysql> alter table student10

-> add stu_num varchar(10) not null after name;                //添加name字段之后

mysql> alter table student10

-> add sex enum('male','female') default 'male' first;          //添加到最前面

3. 删除字段

mysql> alter table student10

-> drop sex;

4. 修改字段类型modify

mysql> alter table student10

-> modify age int(3);

mysql> alter table student10

-> modify id int(11) not null primary key auto_increment;    //修改为主键

5. 增加约束(针对已有的主键增加auto_increment)

mysql> alter table student10 modify id int(11) not null auto_increment;

6. 对已经存在的表增加复合主键

mysql> alter table service2

-> add primary key(host_ip,port);

7. 增加主键

mysql> alter table student1

-> modify name varchar(10) not null primary key;

8. 增加主键和自动增长

mysql> alter table student1

-> modify id int not null primary key auto_increment;

9. 删除主键

a. 删除自增约束

mysql> alter table student10 modify id int(11) not null;

b. 删除主键

mysql> alter table student10

-> drop primary key;

八、复制表

1、复制表结构+记录 (key不会复制: 主键、外键和索引)

mysql> create table new_service select * from service;

2、只复制表结构

mysql> create table new1_service select * from service where 1=2;

mysql> create table t4 like employees;

九、删除表

DROP TABLE 表名;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值