SQL语句实例解析:表操作与视图创建
需积分: 0 131 浏览量
更新于2024-10-09
收藏 125KB DOC 举报
"SQL语句学习手册实例版,包含了创建、删除、修改表以及视图操作的示例。"
在数据库管理系统中,SQL(Structured Query Language)是用于管理和处理关系数据库的标准语言。以下是对给定内容中涉及的SQL知识点的详细解释:
1. **创建表**:`CREATE TABLE` 语句用于创建新的数据库表。例如,`STUDENTS` 表定义了学号(SNO)、姓名(SNAME)、年龄(AGE)、性别(SEX)和出生地(BPLACE),其中SNO为主键。而`ENROLLS` 表则包含了学号(SNO)、课程号(CNO)和成绩(GRADE),SNO和CNO共同构成主键,且CNO和SNO分别参照`STUDENTS`和`COURSES`表,实现了外键约束,同时限制了GRADE的取值范围。
2. **筛选数据**:`SELECT` 语句可以用于从表中选择特定的数据。例如,创建`GIRL` 表时,从`STUDENTS`表中选择了学号、姓名和年龄,条件是性别为'女'。
3. **删除表**:`DROP TABLE` 语句用于删除已存在的表,如删除`TEACHER`表。
4. **添加列**:`ALTER TABLE` 语句可以用于向已有表中添加列,例如在`TEACHERS`表中添加住址(ADDR)列。
5. **删除列**:`ALTER TABLE` 语句也可以删除列,如`DROP BPLACE` 会删除`STUDENTS`表的出生地列,并同时删除所有引用该列的视图和约束,`CASCADE` 关键字确保了级联删除。
6. **定义主键**:`ADD PRIMARY KEY` 用于补充或修改表的主键,例如在`ENROLLS`表中定义了(SNO, CNO)为主键。
7. **创建视图**:视图是虚拟表,不实际存储数据,但可以通过`CREATE VIEW`语句创建。`FACULTY` 视图展示了教师号、姓名和年龄,而`GRADE_TABLE` 视图则综合了`STUDENTS`、`COURSES`和`ENROLLS`表的信息,显示了学生姓名、课程名称和成绩。
8. **视图限制**:需要注意的是,视图定义中不能包含`ORDER BY`子句,这意味着视图返回的结果集不会默认排序,需要在查询视图时单独指定排序。
这些例子展示了SQL基本的DDL(Data Definition Language)和DML(Data Manipulation Language)操作,涵盖了数据库结构的创建、修改和查询,以及视图的创建和使用。通过理解并熟练掌握这些基础操作,用户可以高效地管理和操作数据库中的数据。
2019-07-09 上传
2009-12-26 上传
2024-11-27 上传
2024-11-27 上传
2024-11-27 上传
2024-11-27 上传
iamjig
- 粉丝: 0
- 资源: 8
最新资源
- No.1_xml读取和保存_stormumd_country_
- 给排水燃气施工组织设计-CFG(水泥粉煤灰碎石桩)施工组织设计方案
- 深度思维-数据集.zip
- svelte-tic-tac-toe:用Svelte制作的Tic Tac Toe游戏
- eyetv-export-scripts:帮助 EyeTV 的脚本
- TimeZoneMap:Mysql时区图,通过坐标查找时区
- 通信管道施工-市政道路电力、照明、通信管道工程施工方案
- Estacion Bombeo PS2 V61_hmi_
- Python库 | comb_spec_searcher-1.3.0.tar.gz
- VB+sql学生管理系统(源代码+系统).rar
- 模电集成运放仿真.zip
- EvernoteDup:将印象笔记账户中的笔记复制到evernote账户中
- doorkeeper4j:Doorkeeper API Java 包装器库
- 亮化照明工程施工组织设计-某室外景观亮化工程施工方案
- XMTextView:UITextView扩展
- bp_hanzi_MATLAB-main_matlab_BP汉字识别_