复习.docx
- 文档编号:30255757
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:8
- 大小:125.88KB
复习.docx
《复习.docx》由会员分享,可在线阅读,更多相关《复习.docx(8页珍藏版)》请在冰豆网上搜索。
复习
基本概念:
1.数据库设计的几个阶段
需求分析、概念设计(E-R)、逻辑结构、物理设计、实施、运行和维护
2、SQLSERVER2008数据文件:
主数据、辅助、日志
3、表设计
约束:
primarykey,unique,check,default,foreignkey
Identity属性作用?
User(idintidentity(1,1),name,pwd)
完整性约束(实体、引用、域、用户自定义),触发器
数据类型:
Charvarchar区别
数值:
Bigint,int,smallint,tinyint(0-255整数)占1个字节
学生表(agetinyint)
字符(char,varchar)
(了解)其他:
uniqueidentifier:
用于存储一个16字节长的二进制数据,主要用在拥有多个节点,多台计算机的网络中
PLSQL
4、T-SQL
标识符,遵守标识符格式规则
注释、常量、变量和表达式
哪些符合?
(A)DELETE(B)ORDERINFO
(C)3ORDER(D)ORDER&
T-SQL控制语句
Begin...and语句块,将他们作为一个单元处理
请试试编写:
T-SQL
编写1+2+3+4......+100
Declare@iint
Set@i=1
声明declare语句
局部变量@order;
全局变量:
@@error(不必进行声明,系统定义)
Select*fromreader---5
Updatereadersertname=wherereader=1
If@@rowcount=1
作用?
Print语句?
局部变量赋值语句:
select或SET命令
如:
set@order=3
五、数据查询SQL
子查询、连接查询(左外连接、右外连接、全连接)
雇员信息表
Emp(empno,ename,sex,sal,phone,deptno)
Select*fromemp;
detp(deptno,dname,location)
Selectdeptno,dnamefromdept
1.显示员工编号,部门编号,员工姓名,部门名称
Select
Fromempe,deptd
Wheree.deptno=d.deptno
Fromempeinnerjoindeptd
One.deptno=d.deptno
2.显示所有员工的信息,(包括还没有分配到部门的员工)
(外连接)
Selectempno,ename,d.deptno,dname
Fromempeleftouterjoindeptd
One.detpno=d.deptno
3.显示和‘SCOTT’在同一个部门的员工信息且比他工资低的雇员名字和工资。
(10,2000)
selectename,sal
fromemp
Where(deptno,sal)=(selectdeptno,sal,fromemp
whereename=’scott’)
聚合函数使用
Min,max,avg(),count(),sum()
Groupby
Orderby
Wherehaving区别
4、显示各部门的平均工资、最高工资、最低工资、和总工资列表,并按平均工资高低顺序排列。
Selectavg(sal),max(sal),min(sal),sum(sal)
Fromemp
Groupbydeptno
Orderbyavg(sal)desc
5.查询工资高于平均工资的雇员名字和工资。
SELECT*
Fromemp
WHERESAL>(SELECTAVG(SAL)FROMEMP)
6.按部门名称统计工资总和并排序。
Selectdname,avg(sal),max(sal),min(sal),sum(sal)
Fromemp,dept
Whereemp.deptno=dept.detpno
Groupbydname
Orderbyavg(sal)desc
7.统计各部门的最高工资,排除最高工资小于3000的部门。
Selectdeptno,max(sal)
Fromemp
Groupbydeptno
Havingmax(sal)<=3000
六、索引和视图概念
使用索引目的?
了解索引使用原则:
●避免对经常更新的表进行过多的索引
●对小表进行索引可能不会产生优化效果
视图概念?
使用视图优点?
七:
游标和事务概念
游标概念
游标使用步骤
事务(transaction)概念
试试利用事务完成银行转账功能
八、分区表概念,创建分区表步骤
九、存储过程、函数、触发器
触发器的2个临时副本DELETED和INSERTED作用?
DADEDIFF函数,getdate()
1.CREATEPROCEDUREproc_test
@aINT,
@bINT=NULL,
@cINT=3
AS
SELECT@a,@b,@c
以下对存储过程的执行那些语句是正确的( )
(A)EXECproc_test3,6,7(B)EXECproc_test
(C)EXECproc_test1,DEFAULT,5
(D)EXECproc_test1,3
2.E-R设计是在哪个阶段?
(a)需求分析(B)概念设计 (C)逻辑设计
T-SQL程序设计、存储过程、函数、触发器
1、编写存储过程,验证用户输入的用户名和密码是否与数据库用户名密码一致。
2、创建一存储过程,实现输入读者号,查询该读者的借阅册数。
3.创建一个存储过程,输入读者的姓名,查看读者的图书借阅情况。
4.创建存储过程,查看价格在30元以下的图书的图书号、书名、作者、价格、库存量。
5.创建一个触发器,实现如果该书没有库存,系统触发提示:
对不起,此书已经没有库存,无法进行本次借书操作.
6.创建触发器,实现防止用户修改图书信息表的图书号。
7.创建一个触发器,实现当删除借阅信息表中的记录时,自动将删除的记录存放到表tbllending_bak中。
8.创建一个触发器,实现读者信息表的记录删除时,检验借阅信息表中是否有相关的记录。
如果有,提示不能删除该记录,没有即可删除。
9.创建一个触发器,针对insert,delete,update操作,当执行INSERT\UPDATE操作时,将inserted表中的数据打印出来,执行delete,update操作时,将deleted表中数据打印出来。
10.创建一个自定义函数,每次输入一个读者号,返回该读者姓名、借阅图书号,借阅时间、归还时间。
11.创建一个用户定义的函数fn_evaluateprice,要求:
每次输入一个图书号,查看该书的价格,如果书的价格是100元以上,返回“价格高”,如果是50-100元之间,返回“价格中等”,如果是50元以下,返回“价格较低”,如果该书没有价格或为空,返回”价格未知”。
12.编写一个函数,该函数,可以通过输入借书时间来判断是否到期,当借阅时间大于30天,返回已经过期;否则返回还未到期。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 复习