关系型数据库
1、使用数据库的优点
1、降低存储数据的冗余度
2、更高的数据一致性
3、存储的书库可以共享
4、可以建立数据库所遵循的标准
5、便于维护数据完整性
6、能够实现数据的安全性
2、在数据库中建立表格
1、建立一个表格
create table+表名(
...//建立每一列 注意数据类型
)
2、在表格中增加一列
alter table +表名+add+需要增加的列+数据类型
3、修改表格中的一项
alter table +表名+ change +原有数据+修改完之后数据
4、表格增加索引
crreat index +索引名+on+表名(索引名)
5、删除索引
alter table +表名+drop+index+索引名
6、删除列
alter table drop column+列名
3、保证数据的完整性
1、数据完整概述
1、实体完整性
实体完整性强制表的标识列或主键的完整性,它可以通过在表中设置主键约束,唯一约束或标识列属性来实现。
创建非空约束
create table +表名+(
id int primary key , //设置主键约束
name varchar not null , //设置非空约束
age int default '18' //设置默认是
gender varchar unique //设置唯一约束
)
2、域完整性
域完整性是指定列的输入有效性,强制域有效性的方法有:限制类型格式或可能值得范围。
3、引用完整性
4、用户自定义完整性
5、引用完整性和外键约束
CONSTRAINT FK_class_cID FOREIGN KEY cla_id REFERENCES class (cla_id)
4、使用DML语句更改数据
1、添加新数据
1、插入单行记录
INSERT INTO +表名+(列表列明)+VALUES+(值列表)
2、复制多行记录
insert into Students(StudentID,StudentName)
SELECRT StudentID+2,StudentName from Student1
//在Student1中复制两行记录到Student中
3、表数据的复制
SELECT +列名+ INTO+FROM+ 表名
4、更改已有数据
UPDATE +表名+ SET+<列1=新值1,列2=新值2> +WHERE+过滤条件
5、更改单列/多列数据
UPDATE +表名+SET +列名+ WHERE+过滤条件
6、删除数据
DELETE FROM +表名+WHERE+过滤条件
5、查询的基本结构
投影操作
投影操作是指在SQL查询中,使用SELECT子句,选择将对表中的那些列进行操作,这些列将出现在结果中。
1、查询数据,其语法形式为:
SELECT +列表列名+FROM +表名
例:
SELECT StudentID,ExamID ,Comment FROM StudentExam
//在StudentExam中查询StudentID, ExamID,Comment 三列
知识扩充
列别名:
SELECT i.列表列名 from+表名+as i
2、排除重复数据
SELECT DISTINCT +列A FROM 表 //排除表中中列A中的重复数据
3、返回限定行数的查询
SELECT TOP +count+columnA,columnB from Table
//返回Table中 columnA,columnB的前count行
Select +列表列名+From table limit 0,5 //查询表中的一列数据并且每每页显示5行
选择操作
语法:
SELECT +列表列名+FROM table WHERE+条件
多条件选择
关键字:
between and or
运算符:
= 等于 != 不等于 <> 不等于
例:
SELECT StudentID ,Mark,Comments FROM StudentExam
WHERE ifPassed=1 and ExamID=1 //使用and
SELECT StudentID ,Mark,Comments FROM StudentExam
WHERE ifPassed=1 or Mark>80 //使用or
SELECT StudentID ,Mark,Comments FROM StudentExam
WHERE ifPassed between 1 and 5 //使用between
4、模糊查询
语法:
SELECT 列A,列B FROM 表 WHERE 列C LIKE 模式;
例:
SELECT ExamID , Comment,FROM Exam WHERE Comments LIKE '%%'
5、排序操作
SELECT 列A ,列B,列C FROM 表 ORDER BY 列A,列B,列C...//默认升序
SELECT 列A ,列B,列C FROM 表 ORDER BY 列A desc //降序