企业中的数据,登录用户的账号信息,商品的信息等等,凡是网站必要的数据,最终都会存储到数据库中,数据库也是软件编写的,关于 mysql 安装,参考《mysql的安装使用》文章
这里有登录用户的用户表 user_info,有自增 id,username 用户名和password 密码字段,另外一张表是权限表 role_info,记录用户对应的权限关系,这里只分普通用户和VIP两种角色。
可以把下面 sql 粘贴到 navicat 的查询窗口中去执行。
# 创建登录用户信息表
DROP TABLE IF EXISTS `user_info`;
CREATE TABLE `user_info` (
`id` tinyint(4) NOT NULL AUTO_INCREMENT,
`username` char(20) DEFAULT '' COMMENT '用户姓名',
`password` char(20) DEFAULT NULL COMMENT '登录密码',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
# 创建用户权限信息表
DROP TABLE IF EXISTS `role_info`;
CREATE TABLE `role_info` (
`id` tinyint(4) NOT NULL AUTO_INCREMENT,
`roleid` char(1) NOT NULL COMMENT '权限值,1代表VIP,0代表普通',
`user_id` tinyint(4) NOT NULL COMMENT '对应用户表中的id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
同样,在查询窗口中执行下面 sql 即可
# 向用户信息表插入 3 条数据
INSERT INTO user_info(username, password)
VALUES ('zhangsan', '12345'),('lisi', '56789'),('zhaoliu', '78901');
# 向用户权限信息表插入 3 条数据
INSERT INTO role_info(roleid, user_id)
VALUES ('1', '1'),('0', '2'),('1', '3');
select * from user_info; #查询所有字段的数据
# 查询 id=2 的用户信息
select * from user_info where id=2;
# 查询 id 在(1,3)中的用户信息
select * from user_info where id in (1,3);
# 查询 id 为 2 的用户的姓名和密码
select username,`password` from user_info where id=2;
# 模糊查询姓名以"zha"开头的用户信息
select * from user_info where username like 'zha%'
# 查询所有 VIP 用户的姓名(自然连接方式)
select u.username from user_info u, role_info r
where r.user_id=u.id and r.roleid=1;
# 查询所有 VIP 用户的姓名(左连接方式)
select u.username from user_info u left join role_info r
on r.user_id=u.id where r.roleid=1;
这里简要覆盖下常用查询,具体使用区别,还要多查询了解,比如自然连接、左连接的区别。
下面修改的操作,在执行完 sql 后,记得刷新一下表观察结果。
对于主键的列值,在插入的时候无需指定具体的值,如下:
# 单条语句插入, id 会在原基础上自增
INSERT INTO user_info(username, password)
VALUES ('taishang', '97213');
# 多条数据插入, 参考上面的插入数据
# 将 用户名为 taishang 的密码修改为 66666
update user_info set `password`='66666' where id=4
# 删除姓名为 lisi 的用户信息
delete from user_info where username='lisi'
# 删除所数据, 对表结构无影响, DML 级别
delete from user_info;
# 一次性清空表所有数据, 对表结构没影响, DDL 级别
truncate table user_info;
搜索并关注 “taishangcode” 学习同期技能演示视频。