数据库学习笔记1-爱代码爱编程
1、数据库的模式
外模式和模式----保证了数据的逻辑独立性
模式和内模式----保证了数据的物理独立性
2、模式的创建---CREATE/DROP
CREATE SCHEMA DING
//模式下创建表
CREATE TABLE Student{}
----删除模式时:CASCADE级联删除和RESTRICT限制删除
3、表中数据完整性---实体完整性、参照完整性、用户定义完整性
-No CHAR(5) PRIMARY KEY----主键约束-实体完整性//学号为字符型,作为主键
-Name VARCHAR(10) NOT NULL---用户完整性约束-用户定义完整性//名字为字符型,不能为空
-FOREIGN KEY No REFERENCE Course(No)-----外键约束-参照完整性//外键学号引用自课程表中的学号
4、表修改
增加列----ALTER TABLE Student ADD Sex CHAR(2);//修改学生表,增加性别列为字符型
删除列---ATTER TABLE Student DROP COLUMN Sex;//修改学生表,删除性别列
修改列属性---ALTER TABLE Student ALTER COLUMN Sex CHAR(4)//
增加约束---ALTER TABLE Student ADD Sex(NOT NULL)
5、索引
为了提高查询效率
CREATE UNIQUE/CALSTERED INDEX cc ON Student(cno asc)
6、SELECT查询
SELECT Name FROM Student
----修改查找后的列名 ----SELECT Name Sname FROM Student
----列名加文字--------SELECT '姓名:'+Sname FROM Student
----列名加表达式-----SELECT 2023-Age as Birthday
----列名加函数-----SELECT COUNT(sno)///统计学号非空的人数,即学生总人数
SUM---- 求和函数
AVG-----求平均数
MIN----求最小值
MAX---- 求最大值
7、FROM
FROM Student----从学生表
FROM Student s ---重命名表
8、WHERE
OR、AND ---用于多条件
LIKE-----条件近似值(%匹配任意长度字符,_匹配单个字符)
ORDER BY ------排序
IN
EXISTS NOT EXISTS
9、GROUP BY---用于将结果分组
例如:查找学生所有科目的平均分,按照学号单个显示
SELECT SNO,AVG(GRADE) FROM Student GROUP BY SNO
10、插入元组
INSERT INTO TABLE VALUE (''''''')
11、数据修改
UPDATE Student
SET Sno = ‘’
WHERE
12、视图的优点
可以简化用户操作;使用户能从多个角度看待同一数据;对重构数据库提供了一定的逻辑独立性;能够对机密数据提供安全保护