您的位置:首页 > 职场人生

程序员笔试面试--数据库知识

2015-07-29 11:52 417 查看

1 数据库概念

1 数据管理的发展历程:人工管理、文件系统、数据库系统

2 SQL语言的功能:
1) 数据查询 SELECT; 2) 数据操作 INSERT UPDATA DELETE 3) 数据定义 CREATE(数据表的建立) DROP(数据表的删除) 4) 数据控制 GRANT(为用户授予系统权限) REVOKE (收回系统权限)

3 SQL语句使用方法(重点掌握)
例如,教务系统共包含三个表:学生信息表S (SNO, SNAME, AGE, SEX),分别表示:学号、姓名、年龄以及性别。
选课信息表SC (SNO,CNO,SCGRADE),分别表示:学号、课程号、成绩
课程信息表C (CNO,CNAME,CTEACHER),分别表示:课程号、课程名、教师姓名
利用SQL语句,完成下列操作:
1) 把SC表中每门课程的平均成绩插入到另一张表SC_C(CNO,CNAME,AVG_GRADE)中
INSERT INTO SC_C(CNO,CNAME,AVG_GRADE) SELECT SC.CNO,C.CNAME,AVG(SCGRADE) FROM SC,C WHERE SC.CNO=C.CNO
2) 从SC表中把GAOXIANG老师的女学生选课记录删除
DELETE FROM S,SC,C WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND CNAME='GAOXIANG' AND SEX='女'
3) 规定女学生选秀GAOXIANG老师课程的课程成绩都应该在80分以上
ALTER TABLE SC,S,C
ADD CONSTRAINT SCGRADE CHECK(SCGRADE>=80)
WHERE S.SNO=SC.SNO AND .........
4) 找出没有选过GAOXIANG老师课程的所有女学生姓名
SELECT SNAME FROM S
WHERE NOT EXIST
(SELECT * FROM SC, C WHERE C.CTERCHER='GAOXIANG'...........)
5) 列出有两门以上不及格课程的学生姓名与其平均成绩
SELECT SNAME, AVG_GRADE=AVG(SCGRADE) FROM S,SC,
(SELECT SNO FORM SC WHERE SCGRADE<60 GROUP BY SNO HAVING COUNT(DISTINCT CNO)>=2)A
WHERE S.SNO=SC.SNO AND SC.SNO=A.SNO


4 内连接与外连接
5 事务
6 存储过程及与函数的区别
7 主键与外键
8 死锁、共享锁、互斥锁
9 一二三四范式
10 视图
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: