1.创建数据库

  1. CREATE DATABASE 数据库名;

2.创建表

格式

Create table [if not exists 表名](
·字段名 列类型 【属性】 【索引】 【注释】,
·字段名 列类型 【属性】 【索引】 【注释】,
·字段名 列类型 【属性】 【索引】 【注释】
…….
)【表类型】【字符集设置】【注释】

所有的创建和删除尽量加上判断 以免报错
实例:

  1. create table if not exists `user`(
  2. `id` int(10) not null auto_increment comment'唯一标识符',
  3. `name` varchar(30) not null default'匿名' comment'姓名',
  4. `pwd` varchar(20) not null default'123456' comment'密码',
  5. `swx` varchar(2) not null default'女' comment'性别',
  6. `birthday` datetime default null comment'出生日期',
  7. `address` varchar(100) default null comment'家庭住址',
  8. `email` varchar(30) default null comment'邮箱',
  9. PRIMARY KEY (`id`)
  10. )engine =innodb default charset=utf8

查看语句

  1. SHOW CREATE DATABASE 数据库名 --查看创建数据库的SQL语句
  2. SHOW CREATE TABLE 表名 --查看创建表的SQL语句
  3. DESC 表名 --显示表的结构

数据表的

INNODB MYISAM
事物支持 不支持 支持
数据行锁定 不支持(表锁定) 支持
外键约束 不支持 支持
全文索引 支持 不支持
表空间大小 较小 较大(约等于myiasm两倍)

常规使用操作:

  • MYISAM 节约空间 速度快
  • INNODB 安全性高 事务处理 多表多用户操作


在物理空间存在的位置**
所有的数据库文件都存在data目录下 一个文件夹对应一个数据库
本质还是文件的存储
MySQL引擎在物理文件上的区别

  • INNODB在数据库表中只有一个 *.frm文件 以及上级目录下的ibdata1文件
  • MYISAM对应文件
    • *.frm 表结构的定义文件
    • *.myd 数据文件(data)
    • *.myi 索引文件(index)

设置数据库表的字符集编码

创建表时 charset=utf8 每次创建表格都要加上
配置文件中 default-character-set=utf8 创建表时不需要再设置

注:建议每次建表都设置字符编码格式(具备可移植性)

修改和删除表

  1. --修改表名
  2. ALTER TABLE 表名 RENAME AS 新名
  3. --增加表的字段
  4. ALTER TABLE 表名 ADD 字段 属性;
  5. --修改表的字段(重命名,修改约束)
  6. --ALTER 表名 MODIFY 字段名 属性
  7. --ALTER 表名 CHANGE 旧名字 新名字 属性
  8. ALTER TABLE student1 MODIFY `name` VARCHAR(10) --修改约束
  9. ALTER TABLE student1 CHANGE `name` `name1` VARBINARY(15) --字段重命名
  10. --删除表的字段
  11. ALTER 表名 DROP 字段名
  12. ALTER TABLE student1 DROP `name1`
  13. --如果表存在删除表
  14. DROP TABLE IF EXISTS student1

**