MySQL基础(二)
2020-07-14 06:16
113 查看
数据类型与约束
为了防止数据库中插入错误的数据,MySQL定义了一些维护数据库完整性的规则,即表的约束。
常见约束分5种:默认约束,非空约束,唯一约束,主键约束,外键约束。
- 默认约束
字段名 数据类型 DEFAULT 默认值;
- 非空约束
字段名 数据类型 NOT NULL;
- 唯一约束
#列级约束 字段名 数据类型 UNIQUE; #表级约束 UNIQUE(字段名1,字段名2,...);
- 主键约束
#列级约束 字段名 数据类型 PRIMARY KEY #表级约束 PRIMARY KEY (字段名1,字段名2,...);
NOTE:一张表只能有一个主键
自动增长
字段名 数据类型 AUTO_INCRMENT;
NOTE:一个表中只能有一个自动增长字段,且数据类型为整型,必须定义为键(如UNIQUE KEY,PRIMARY KEY)
字符集与校对集
- 查看可用字符集
SHOW CHARACTER SET; #修改字符集 set names 字符集;
- 查看MySQL可用的校对集
SHOW COLLATION; #查看与字符集相关的变量 SHOW VARIABLES LIKE 'character%';
实践
创建一张表,保存用户的信息如下:
- 用户名:可以使用中文,不允许重复,长度在20个字符以内
- 手机号码:长度为11个字符
- 性别:有男、女、保密三种选择
- 注册时间:注册时的日期和实践
- 会员等级:表示会员等级的数字,最高为100
创建如下:
CREATE TABLE mydb.user( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT '用户id', username VARCHAR(20) UNIQUE NOT NULL COMMENT '用户名', mobile CHAR(11) NOT NULL COMMENT '手机号码', gender ENUM('男','女','保密') NOT NULL COMMENT '性别', reg_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '注册时间', level TINYINT UNSIGNED NOT NULL COMMENT '会员等级' ) DEFAULT CHARSET=utf8;
添加测试记录
INSERT INTO mydb.user VALUES( NULL, '小明', '13111111111','男', '2020-05-18 11:11:11',1 );
#查询用户表中的记录
SELECT * FROM mydb.user;
参考文章《MySQL数据库原理、设计与应用》
相关文章推荐
- MySQL基础7-分页查询
- mysql基础知识
- MySQL基础系列之一 DDL、DML和DCL的区别与理解
- MySQL基础知识
- MySQL基础 三 数值类型,索引
- MySQL基础
- mysql基础
- Mysql 基础之 MyISAM 与 InnoDB 的区别
- 2014年辛星mysql教程秋季版之夯实基础pdf
- MySQL 基础查询
- Mysql基础一
- PHP基础示例:用PHP+Mysql编写简易新闻管理系统
- MySQL基础
- 写给自己看的Linux运维基础(二) - Apache/MySQL. 安全设置. 定时任务
- MySQL 入门(二)—— MySQL理论基础
- MySQL学习笔记(二)__基础查询
- mysql零基础入门视频教程免费分享!
- Mysql-JDBC基础
- mysql使用基础 sql语句(一)
- MYSQL修改列的基础语句