5.9笔记
一、JDBC技术
| Java DataBase Connect Java数据库连接技术,专门负责Java程序连接各种数据库,操作数据的。 |
| |
1、MySQL基本概念
| MySQL是用来管理数据的,MySQL是使用数据库和数据表这两个概念来管理数据。 |
| |
| 数据库相当于是一个文件夹,MySQL中可以有很多的数据库,数据表只能存在于数据库下,一个数据库可以有多个数据表。 |
| |
| MySQL操作库和表,借助一个编程语法来完成,SQL语言来完成库和表的操作。 |
| |
| 在MySQL中的SQL语言一共分为4类: |
| |
| (1)DDL语言:数据定义语言,管理数据库和数据表的语言,创建、删除、修改、查询数据库和数据表的语言。 |
| |
| create drop alter show desc use |
| |
| (2)DML语言:数据操纵语言,管理表数据的语言,创建、删除、修改表数据的语言 |
| |
| insert delete update |
| |
| (3)DQL语言:数据查询语言,查询表数据的语言 |
| |
| select from where group by order by limit |
| |
| join union |
| |
| (4)DCL/TCL语言:事务控制语言,控制MySQL数据事务 |
2、安装MySQL和使用
| (1)MySQL的启动(自启动的) |
| |
| windowsà服务—>MySQLxx的服务—>右键 启动、关闭 |
| |
| 如果没有MySQLxx服务,使用如下方式开始MySQL服务: |
| |
| 在cmd命令行输入mysqld命令 |
| |
| (2)连接MySQL |
| |
| mysql -uroot -p密码 -P端口 |
3、MySQL中常用命令
1、查看MySQL中有哪些数据库
2、删除数据库·
drop database
数据库名;
3、创建数据库
create database if not exists
数据库名 charset “utf8”;
4、使用数据库
use 数据库名;
5、查看当前数据库下有哪些数据表
show tables;
6、创建数据表
| create table if not exists 数据表名( |
| |
| 字段名 字段类型 字段约束, |
| |
| 字段名 字段类型 字段约束, |
| |
| ……… |
| |
| )charset=”utf8”; |
7、查看表字段
8、删除数据表
9、向数据表中增加数据
| insert into 数据表名(表字段列表) values(字段值列表),(字段值列表); |
10、修改表数据
| update 数据表名 set 字段名=字段值,字段名=字段值 where 筛选条件; |
11、删除表数据
delete from 数据表名 where 筛选条件;
12、查询表数据
| select * from 表名; 查询表中的所有字段的所有行 |
| |
| select a,b,c from 表名; 查询表中所有行的a b c三列 |
| |
| select 查询列表 from 表名 where 筛选条件; 查询表中指定的数据 |
| |
| select 分组字段,聚合韩式 from 表名 group by 分组字段; 分组查询 |
| |
| select * from 表名 order by 排序字段 asc|desc; 排序查询 |
| |
| select * from 表名 limit n; 限制查询前n条数据 |
二、作业
1、要求创建一个数据库叫做company 数据库支持中文;
| 2、在company数据库下创建一个员工employees数据表,员工数据表有如下字段: |
| |
| employ_id 员工编号 整数类型 自动递增的主键 |
| |
| employ_name 员工的姓名 |
| |
| employ_age 员工的年龄 |
| |
| employ_sex 员工的性别 |
| |
| employ_salary 员工的薪资 小数double |
| |
| employ_department_id 员工部门编号 整数 |
| |
| 3、增加数据(自己增加) |
| |
| 4、将表中1号部门的所有员工薪资更改为3000.00; |
| |
| 5、删除表中年龄在16岁以下的员工信息 |
| |
| 6、查询表中年龄大于30岁并且薪资小于5000的员工信息 |
| |
| 7、查询表中每个部门的总人数 |
| |
| 8、查询表中性别为man的所有员工中薪资最高的员工信息 |
| |
| 9、查询不同部门的平均薪资avg |
| |
| 10、查询部门人数最多的前两个部门编号 |
- 创建数据库company并设置字符集为utf8:
| CREATE DATABASE company CHARACTER SET utf8; |
- 在company数据库下创建员工employees数据表:
| USE company; |
| CREATE TABLE employees ( |
| employ_id INT AUTO_INCREMENT PRIMARY KEY, |
| employ_name VARCHAR(50), |
| employ_age INT, |
| employ_sex VARCHAR(10), |
| employ_salary DOUBLE, |
| employ_department_id INT |
| ); |
- 插入数据:
| INSERT INTO employees (employ_name, employ_age, employ_sex, employ_salary, employ_department_id) VALUES |
| ('张三', 25, '男', 5000, 1), |
| ('李四', 30, '女', 6000, 1), |
| ('王五', 35, '男', 7000, 2), |
| ('赵六', 40, '女', 8000, 2), |
| ('钱七', 45, '男', 9000, 3), |
| ('孙八', 50, '女', 10000, 3); |
- 将表中1号部门的所有员工薪资更改为3000.00:
| UPDATE employees SET employ_salary = 3000 WHERE employ_department_id = 1; |
- 删除表中年龄在16岁以下的员工信息:
| DELETE FROM employees WHERE employ_age < 16; |
- 查询表中年龄大于30岁并且薪资小于5000的员工信息:
| SELECT * FROM employees WHERE employ_age > 30 AND employ_salary < 5000; |
- 查询表中每个部门的总人数:
| SELECT employ_department_id, COUNT(*) FROM employees GROUP BY employ_department_id; |
- 查询表中性别为man的所有员工中薪资最高的员工信息:
| SELECT * FROM employees WHERE employ_sex = '男' AND employ_salary = (SELECT MAX(employ_salary) FROM employees WHERE employ_sex = '男'); |
- 查询不同部门的平均薪资avg:
| SELECT employ_department_id, AVG(employ_salary) FROM employees GROUP BY employ_department_id; |
- 查询部门人数最多的前两个部门编号:
| SELECT employ_department_id, COUNT(*) as count FROM employees GROUP BY employ_department_id ORDER BY count DESC LIMIT 2; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?