MySQL 新建数据库、建立索引、建立外键
2016-10-30 16:46
330 查看
本文通过命令操作数据库的方式,以简单会员表为例,为读者简述数据表的简单设计及操作。
1. 新建数据库:
CREATE DATABASE 数据库名;
2. 新建数据表:
//Tab1.会员用户名表
CREATE TABLE w_member(
`mid` INT(20) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`username` CHAR(18) NOT NULL,
`password` CHAR(32) NOT NULL,
`createTime` datetime NOT NULL,
`is_statu` TINYINT NOT NULL DEFAULT "0"
) ENGINE=Innodb DEFAULT CHARSET=utf8;
//Tab2.会员详细表
CREATE TABLE w_memberDetail(
`mid` INT(20) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(20) NOT NULL,
`mobile` CHAR(11) NOT NULL,
`createTime` datetime NOT NULL,
) ENGINE=Innodb DEFAULT CHARSET=utf8;
3. 修改默认引擎、重置数据表:
ALTER TABLE `w_member` ENGINE=Innodb; //修改引擎
ALTER TABLE `w_member` AUTO_INCREMENT=1; //重置表
4. 添加索引:
Alter TABLE `w_member` add unique(mid); //添加唯一索引
Alter TABLE `w_member` add Index username(username); //添加普通索引
5. 建立外键:
//创建关联外键w_member —> w_memberDetail, 表示: 用户插入数据时,必须保证w_memberDetail中的’mid’已经存在于’w_member’中;
Alter TABLE `w_memberDetail` add FOREIGN KEY(mid) REFERENCES w_member(mid);
6. 对已建立外键的两个表插入关联数据:
INSERT INTO `w_member` (`username`,`password`,`createTime`,`is_statu`) VALUES ('手机号码','密码','创建时间’,'状态'); //创建完成,生成最新数据mid=1;
INSERT INTO `w_memberDetail` (`mid`,`name`,`mobile`,`createTime`) VALUES ('在ta_member中新生成的mid','姓名','手机号码','创建时间');
//注: w_memberDetail中新插入数据时,必须保证新插入数据中的mid值已经在w_member中存在(即,以w_member为主表,w_memberDetail为会员详细表创建外键时,外键应创建在详细表中)。
1. 新建数据库:
CREATE DATABASE 数据库名;
2. 新建数据表:
//Tab1.会员用户名表
CREATE TABLE w_member(
`mid` INT(20) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`username` CHAR(18) NOT NULL,
`password` CHAR(32) NOT NULL,
`createTime` datetime NOT NULL,
`is_statu` TINYINT NOT NULL DEFAULT "0"
) ENGINE=Innodb DEFAULT CHARSET=utf8;
//Tab2.会员详细表
CREATE TABLE w_memberDetail(
`mid` INT(20) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(20) NOT NULL,
`mobile` CHAR(11) NOT NULL,
`createTime` datetime NOT NULL,
) ENGINE=Innodb DEFAULT CHARSET=utf8;
3. 修改默认引擎、重置数据表:
ALTER TABLE `w_member` ENGINE=Innodb; //修改引擎
ALTER TABLE `w_member` AUTO_INCREMENT=1; //重置表
4. 添加索引:
Alter TABLE `w_member` add unique(mid); //添加唯一索引
Alter TABLE `w_member` add Index username(username); //添加普通索引
5. 建立外键:
//创建关联外键w_member —> w_memberDetail, 表示: 用户插入数据时,必须保证w_memberDetail中的’mid’已经存在于’w_member’中;
Alter TABLE `w_memberDetail` add FOREIGN KEY(mid) REFERENCES w_member(mid);
6. 对已建立外键的两个表插入关联数据:
INSERT INTO `w_member` (`username`,`password`,`createTime`,`is_statu`) VALUES ('手机号码','密码','创建时间’,'状态'); //创建完成,生成最新数据mid=1;
INSERT INTO `w_memberDetail` (`mid`,`name`,`mobile`,`createTime`) VALUES ('在ta_member中新生成的mid','姓名','手机号码','创建时间');
//注: w_memberDetail中新插入数据时,必须保证新插入数据中的mid值已经在w_member中存在(即,以w_member为主表,w_memberDetail为会员详细表创建外键时,外键应创建在详细表中)。
相关文章推荐
- MySQL里建立索引应该考虑数据库引擎的类型
- SQL Server MYSQL 对外键建立索引的必要性
- 如何设计高效合理的MySQL查询语句(建立数据库索引的基本原则)
- liunx中(mysql 索引住主外键关系对数据库的操作深入学习)
- mysql 查询指定数据库所有表, 指定表所有列, 指定列所有表 所有外键及索引, 以及索引的创建和删除
- mysql、sqlserver、oracle三种数据库维护索引、外键、字段语法总结(转)
- MySQL里建立索引应该考虑数据库引擎的类型
- mysql给创建的外键自动建立索引吗?
- mysql 数据库建立索引
- mysql建立不上外键,sql语句一运行完就会生成一条索引,但是外键却建不上
- MySQL里建立索引应该考虑数据库引擎的类型
- MySQL外键及级联删除 && 表的存储引擎与创建索引 && 删除数据库和表
- mysql、sqlserver、oracle三种数据库维护索引、外键、字段语法总结
- MySQL里建立索引应该考虑数据库引擎的类型
- MySQL里建立索引应该考虑数据库引擎的类型
- 删除数据库的所有存储过程、主键、外键、索引等
- Linux下建立Mysql镜像数据库
- linux下建立mysql镜像数据库
- 用Lucene.net对数据库建立索引及搜索
- 数据库优化(如何正确建立索引)