1、创建数据库 CREATE DATABASE [IF NOT EXISTS] westos; 2、删除数据库 DROP DATABASE [IF EXISTS] westos; 3、使用数据库 -- tab键的上面,如果你的表名或者字段是一个特殊字符,就需要带`` USER `school` 4、查看数据库 show DATABASE -- 查看数据库
数值型
字符串类型
时间日期
null
Unsigned:
zerofill:
自增
非空NULL / NOT NULL
CREATE TABLE IF NOT EXISTS `student`( `id` INT(4) not null AUTO_INCREMENT COMMENT '学号', `name` varchar(30) not null default '匿名' comment'姓名', `pwd` varchar(20) not null default '123456' COMMENT '密码', `sex` varchar(2) not null default '男'COMMENT '性别', `birthday` datatime dafault NULL COMMENT '出生日期', PRIMARY KEY (`id`) )ENGINE=INNODB DEFAULT CHARSET=utf8
注意
格式
CREATE TABLE [IF NOT EXISTS] `表名`( `字段名` 列类型 [属性][索引][注释], `字段名` 列类型 [属性][索引][注释], ...... `字段名` 列类型 [属性][索引][注释] PRIMARY KEY (`字段名`) )[表类型][字符串设置][注释] -- 字符串设置 default charset=utf8
默认使用 INNODB
早些年使用 MYISAM
MYISAM | INNODB | |
---|---|---|
事务支持 | 不支持 | 支持 |
数据行锁定 | 不支持 | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间的大小 | 较小 | 较大,约2倍 |
常规使用操作:
所有的数据库文件都存在在 data目录下一个文件夹就对应一个数据库
本质还是文件的存储!!
MYSQL引擎在物理上的区别:
设置数据库表的字符集编码
CHARSET=utf8
不设置会出现问题,就会变成默认的字符集编码----(不支持中文)
默认的是 Latin1,不支持中文
-- 可以在my.ini中配置默认的编码 character-set-server=utf8 -- 建议不要自己去配置,为了代码可以在更多电脑中运行,每次创建表时在后面自己配置
+++
CREATE DATABASE stu_info -- 创建了一个数据库名为:stu_info -- 数据库下的表的实例 -- student学生信息表 create table if not exists `student`( `sno` char(9) comment '学号', `sname` char(20) unique comment '姓名', `sex`char(2) not null comment '性别', `sage`smallint not null comment '年龄', `sdept` char(20 ) not null comment '专业', primary key(`sno`) )engine=innodb default charset=utf8 -- 课程信息表格 create table if not exists `Course`( `cno` char(9) not null comment '课程号', `cname` char(40) not null comment '课程名', `cpno` char(4) not null comment '先修课', `credit` smallint not null comment '课程学分', primary key (`cno`) )engine=innodb default charset=utf8
此处我没有做数据表的外键,因为后面的练习需要删除数据,需要添加数据,所以就简单的练习下