数据库操作 Day 6

3 篇文章 0 订阅

数据库:

数据在内存:

  • 优点:读写速度快。
  • 缺点:程序结束数据丢失。

数据保存到文件:

  • 优点:数据可以永久保存。
  • 缺点:1.频繁的IO操作,效率低。
    2.数据的管理非常不方便,需要把所有的数据整体都读取出来才能操作。

数据库:

  • 数据永久保存。
  • 管理方便。

Mysql

一:数据库操作:

创建数据库

CREATE DATABASE school DEFAULT CHARACTER SET UTF8;

  • SHOW DATABASES; 展示所有数据库。
    在这里插入图片描述
删除数据库

DROP DATABASE school;

二:数据库表的操作:

创建表
-- 建表
CREATE TABLE student(
		id INT,
		`name` CHAR(10),
		age INT,
		gender CHAR(1)
)
--查找所有表
SHOW TABLES;

在这里插入图片描述

查看表结构
-- 查看表结构
DESC student;

在这里插入图片描述

删除表
--删表
DROP TABLE student;
更改表结构
1.添加字段
-- 添加字段
ALTER TABLE student ADD COLUMN address CHAR(255);

在这里插入图片描述

2.修改字段
-- 修改字段
AlTER TABLE student CHANGE address addr char(20);

在这里插入图片描述

3.删除字段
-- 删除字段
ALTER TABLE student DROP COLUMN addr;

在这里插入图片描述

修改表名
-- 修改表名
ALTER TABLE student RENAME TO teacher;

在这里插入图片描述

添加主键和设置自增:
CREATE TABLE student(
id INT PRIMARY KEY AUTO_INCREMENT,
name CHAR(20),
age INT,
gender char(1)
)

三:表的基本操作

1.增
  • 1
-- 插入列(一次插一条)
INSERT INTO student(`name`,age,gender) VALUES("张三",1,"男");

在这里插入图片描述

  • 2
--插入列(一次插多条)
INSERT INTO student(`name`,age,gender) VALUES("李四",2,"女"),("王五",3,"男");

在这里插入图片描述

2.改
--修
UPDATE student SET gender="男" WHERE `name`="李四";

在这里插入图片描述

3.删
--删
DELETE FROM student WHERE `name`="李四";

在这里插入图片描述

4.查

SELECT * FROM student;

查询表的所有内容,不推荐,内容少时可以操作,建议需要哪个列就找哪个列。

  • 1
-- 查询指定列
SELECT `name`,age,gender FROM student WHERE id=1;

在这里插入图片描述

  • 2
-- 查询时候合并列,字段可以当成java里面的变量来运算
SELECT id,`name`,(php+java) AS '总成绩' FROM student;

在这里插入图片描述

  • – 查询时候去掉重复的记录
    SELECT DISTINCT address FROM student;

  • 查询时候添加常量列,通过as可以起别名
    SELECT id,name,age AS ‘年龄’ FROM student;

拓展:
1.聚合查询

在这里插入图片描述

2.查询排序

在这里插入图片描述

3.分组查询
  • 1
--分组查询
-- select后面的查询都是基于group by之后的
SELECT gender,COUNT(id) AS "个数" FROM student GROUP BY gender;

在这里插入图片描述

  • 2
-- group by之后的条件查询使用having
SELECT gender,COUNT(id) AS "个数" FROM student GROUP BY gender HAVING COUNT(id)>2;

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值