DDL
DDL(data definition language):DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
DDL基础操作
rpm数据库位置:/var/lib/mysql/
源码包位置不一样
创建业务数据库:: CREATE DATABASE 数据库名;
查看所有数据库: SHOW DATABASES;
进入/切换数据库: USE 数据库名
删除数据库: DROP DATABASE 数据库名;
查看表结构: DESC 表名
数据类型
数据类型 | 类型 |
---|---|
整数型 | int(有符号型最大2147483647)、tinyint(有符号型最大127)、bigint、smallint |
浮点型 | float、double |
日期型 | date、time、datetime、year |
字符型 | char、varchar |
枚举型 | enum(单选) |
集合型 | set(多选) |
类型表创建示例
[root@localhost ~]# mysql -uroot -pHonglei@123
#创建数据表
mysql> use school
mysql> create table student3(
name varchar(50),
sex enum('m','f'),
hobby set('music','book','game','disc') );
完整性约束
约束类型 | 说明 |
---|---|
PRIMARY KEY (PK) | 标识该字段为该表的主键,可以唯一的标识记录,不可以为空 |
FOREIGN KEY (FK) | 标识该字段为该表的外键,实现表与表(父表主键/子表1外键/子表2外键)之间的关联 |
UNIQUE KEY (UK) | 标识该字段的值是唯一的,可以为空,一个表中可以有多个UNIQUE KEY |
AUTO_INCREMENT | 标识该字段的值自动增长(整数类型,而且为主键) |
DEFAULT | 为该字段设置默认值 |
NOT NULL | 标识该字段不能为空 |
UNSIGNED | 无符号,正数 |
ZEROFILL | 使用0填充,例如0000001 |
完整性约束测试
[root@localhost ~]# mysql -uroot -pHonglei@123
#创建数据表not null、default
mysql> use school
mysql>create table student4(
id int not null,
name varchar(50) not null,
sex enum ('m','f') default 'm' not null,
age int unsigned default 18 not null,
hobby set('music','disc','dance','book') default 'book,dance' );
数据库引擎类型有哪些?:InnoDB、ISAM、MyISAM、Memory