欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > SQL数据库管理

SQL数据库管理

2025/10/20 14:16:18 来源:https://blog.csdn.net/m0_69643079/article/details/143812054  浏览:    关键词:SQL数据库管理

目录

摘要

第一章 数据库与SQL

实验 1:创建数据库

实验 2:创建数据表格

实验 3:导入数据

第一章 练习题

第二章 查询基础

实验 4:使用查询语句

实验 5:使用语句更新记录

实验 6:使用语句

第二章 练习题

第三章 聚合与排序

实验 7:使用聚合函数

实验 8:可能会报错的情况

实验 9:子句的书写顺序

第三章 练习题

第四章 数据更新

实验 10:数据表的备份

实验 11:删除数据表的记录

实验 12:插入新的记录到数据表

第四章 练习题

第五章 复杂查询

实验 13:创建和使用索引

实验 14:创建和使用存储过程

实验 15:创建触发器

实验 16:用户自定义函数

第五章 练习题

统计计算

总结


摘要

SQL是一种广泛应用于数据管理和分析的语言,掌握关系数据库基本概念和原理,并用SQL语句进行相对简单的数据操作,深入了解数据库的本质和应用,能够更有效地处理和分析数据。通过上机逐步掌握SQL的使用方法,包括数据库和表的建立、向表中插入新的数据行、删除数据库或表中的数据、更新修改数据库或表中的数据,常用函数以及表的联结等内容。

第一章 数据库与SQL

实验 1:创建数据库

代码:

--创建数据库命名为“school”

CREATE DATABASE school;

修改数据库名称为“School”,如下图所示:

图 1:修改数据库名称

实验 2:创建数据表格

代码:

CREATE TABLE Student--创建表格命名为“Student”

(id CHAR(12) NOT NULL, name VARCHAR(10) NOT NULL,

class VARCHAR(10) NOT NULL, Math_scores FLOAT, English_scores FLOAT, Birth_date date, PRIMARY KEY (id));--主键设置为 id

实验 3:导入数据

代码:

BEGIN TRANSACTION;

INSERT INTO Student VALUES ('202111080688', '阙艺琢', '统计 211',100, 100, '2003-02-03');

INSERT INTO Student VALUES ('202111080689', '张三', '统计 211',98.5, 90, '2002-09-19');

INSERT INTO Student VALUES ('202111080690', '李四', '统计 211',80, NULL, '2002-12-08');

INSERT INTO Student VALUES ('202111080153', '王五', '统计 211', NULL, 85, '2002-03-27');

INSERT INTO Student VALUES ('202111080154', '赵六', '统计 212',85.5, 75.5, '2002-10-22');

INSERT INTO Student VALUES ('202111080155', '孙七', '统计 212',65, 78.5, '2001-11-11');

INSERT INTO Student VALUES ('202111080156', '周八', '统计 212',88.5, 89.5, '2002-02-08');

INSERT INTO Student VALUES ('202111080157', '郑九', '统计 212', NULL, NULL,'2003-05-13');

COMMIT;

图 2:导入数据

第一章 练习题

1.1

CREATE TABLE Addressbook

 (regist_no INTEGER NOT NULL,

 name VARCHAR(128) NOT NULL,

 address VARCHAR(256) NOT NULL,

 tel_no CHAR(10) ,

 mail_address CHAR(20) ,

 PRIMARY KEY (regist_no));

图 3:练习题1.1

图 4:练习题1.1

1.2

ALTER TABLE Addressbook ADD postal_code CHAR(8) NOT NULL;

图 5:练习题1.2

1.3

DROP TABLE Addressbook;

图 6:练习题1.3

1.4

删除后的表无法使用命令进行恢复。只能用1.1的CREATE TABLE再次创建表。

第二章 查询基础

实验 4:使用查询语句

--查询出 Student 表中的列

代码:

SELECT id, name, English_scores

FROM Student;

图 7:查询部分列

SELECT *

FROM Student;--输出 Student 表中全部的列

图 8:查询全部列

SELECT id AS "学号",--为列设定别名

name AS "学生姓名", English_scores AS "英语成绩", Math_scores AS "高数成绩"

FROM Student;

图 9:为列设定别名

--使用DISTINCT删除英语成绩列中重复的数据

SELECT DISTINCT Math_scores

FROM Student

图 10:删除重复数据

--在多列之前使用DISTINCT

SELECT DISTINCT Math_scores,English_scores

 FROM Student;

图 11:删除重复数据

实验 5:使用语句更新记录

--将阙艺琢的学号更正为‘202111080666’

代码:

UPdate Student

SET id = '202111080666'

WHERE name = '阙艺琢';

SELECT * -- 确认更新内容

FROM Student

ORDER BY id;

图 12:更新内容

实验 6:使用语句

--WHERE 筛选、ORDER BY 排序

代码:

--选取出Math_scores列为100的记录

SELECT name, class

FROM Student

WHERE Math_scores = 100;

图 13:筛选Math-scores列为100的记录

--选取数学成绩大于 80 的记录的学生姓名及其班级的 SELECT 语句

代码:

SELECT name, class--随意改变子句的书写顺序会造成错误

FROM Student

WHERE Math_scores > 80;

图 14:使用语句筛选

--选取出Math_scores列不为100的记录

SELECT name, class

FROM Student

 WHERE Math_scores <> 100;

图 15:使用语句筛选

SELECT name, Birth_date--选取出出生日期在2003年1月1日之前的记录,并按从小到大顺序排序

FROM Student

WHERE Birth_date < '2003-01-01'

ORDER BY Birth_date;--默认降序

图 16:使用语句筛选并将结果排序

--WHERE中添加NOT运算符

SELECT name,class,Math_scores, English_scores

FROM Student

WHERE <

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词