数据库考试复习资料_第1页
数据库考试复习资料_第2页
数据库考试复习资料_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、建库代码create database NewDB on primary(name=newDBdata,数据库练习资料 newDBdata.mdf, size=3MB,maxsize=20MB, filegrowth=10%)log on( name=newDBlog, 数据库练习资料newDBlog.ldf, size=1MB, maxsize=5MB, filegrowth=1MB 修改数据库代码 use NewDB goalter database NewDB modify file( name=newDBdata, size=50MB, filegrowth=2MB)使用 T-SQL

2、语句对数据库 NewDB增 加数据文件 newDBdata1.ndf ,初始 大小为 10MB,最大大小为 50MB,按 10%增长。alter database NewDBadd file(name=newDBdata1,数据库练习资料 newDBdata1.ndf, size=10MB,maxsize=50MB, filegrowth=10%) 删除新增的数据文件 newDBdata1.ndf ALTER DATABASE NewDB1 REMOVE FILE newDBdata1 将数据库 NewDB的名字改为 NewDB1。 alter database NewDB modify na

3、me=NewDB1GO1.SQL SERVER有哪些系统数据库, 各自作用是什么? 答: MASTER核: 心数据库 主要配合完成数据库的权限, 日志, 登陆信息,设定,进程管理等数据 库系统与操作系统级别的服务操作 MODEL模: 版数据库 主要配合完成用户自定义数据库创 建时提供各种模板MSDB自: 动化任务 主要完成一些定时,预操作比如发 送邮件,提示等等等等。TEMPDB临: 时缓存 NORTHWIN和D PUBS:样例库2、SQL SERVER数据库文件和日志文件各自的特点及作用是什么?(1) . 主要数据文件( .mdf ) 主要数据文件包含数据库的启动信 息,并用于存储数据。每个

4、数据库 都有一个主要的数据文件。(2) . 次要数据文件( .ndf ) 次要数据文件也用来存储数据,他 含有不能置于主要文件中的说有数 据。如果主要文件可以包含数据中 的所有数据,那么数据库就不需要 次要数据文件。如果数据库很大, 主要主要数据文件超过了行的限制, 就需要设置多个次要的文件并将它 们保存到不同的磁盘上 。3. 为什么要使用辅助数据文件?数 据库可以不用自动增长吗? 主要是为了数据操作简单和安全性 考虑,数据库也可以设置为手动增 长,知道磁盘存储不下为止。第三章1、常见数据库约束有哪些及其各自 特点? 答:常见的约束:主键约束、外键 约束、默认值约束、检查约束、非 空约束、唯一

5、值约束。2、char 、varchar 、nchar 、nvarchar 之间区别?答: char ( n ) :固定长度,非 Unicode 字符数据,长度为 n 个字节。 n 的取值范围为 1 至 8,000 ,存储大小是 n 个字节。每 个字符和符号占用 1 个字节。 varchar ( n | max ) :可变长度,非 Unicode 字符数据。 n 的 取值范围为 1 至 8,000 。max 指示 最大存储大小是 231-1 个字节。 nchar ( n ) : n 个字符的固定长度的 Unicode 字符数据。 n 值 必须在 1 到 4,000 之间(含)。存 储大小为两倍

6、n 字节。nvarchar ( n | max ) :可变长度 Unicode 字符数据。 n 值在 1 到 4,000 之间(含) 。 max 指示最 大存储大小为 231-1 字节。存储 大小是所输入字符个数的两倍 + 2 个字节。3、date 和 datetime 之间区别? money 和 float 区别?答: date 是 SQL Server 2008 新引 进的数据类型。它表示一个日子, 不包含时间部分,可以表示的日期 范围从公元元年 1月 1日到 9999 年 12 月 31 日。只需要 3 个字节的存储 空间。 DateTime 日期和时间部分, 可以表示的日期范围从公元

7、1753 年 1月1日 00:00:00.000 到9999年 12 月 31 日 23:59:59.997 ,精确到 3.33 毫秒,它需要 8 个字节的存储 空间。money 和 float 区别:金额的存储 上可以优先 money,如果金额过大采 用 decimal ( numeric ),极端的情况 (数据超大)使用 float ( real )。 建表代码 use Marker_db create table customers(c_id int primary key, c_name varchar(50), c_contact Varchar(50), c_city Varcha

8、r(50), c_brith varchar(50) not null, )GO 修改数据类型 alter table customers alter column c_name varchar(70) GO 修改字段名EXEC sp_rename customers.c_contact, c_phone, COLUMNGO增加字段alter table customers add c_gender char(1) null GO 修改表名EXEC sp_rename customers, customers_infoGO 删除字段 alter table customers_info dro

9、p column c_cityGO在 Market 中创建数据表 orders use Marker create table orders(O_num int primary key,O_date date,O_id Varchar(50),) 外键 alter table orders add constraint o_num_c_id_FK1 foreign key (o_num) references customers_info(c_id) 删除 orders 表的外键约束, 然后删 除表 customers 。1. 删除外键约束 alter table orders drop co

10、nstraint o_num_c_id_FK12. 删除表 use Marker go drop table customers_2 第四章 简述 T-SQL 语句分类及其作用 数据操作语句(用于增、删、改、 查)、数据定义语句(用于创建、管 理数据库各种对象) 、数据控制语句 (用于账号管理、用户管理、角色 管理)和一些附加的语言元素(用 于事务处理、 游标等)。参阅 P94 页 的相关简述,学会这门课程后,要 掌握所有关键字的使用。 简述什么是架构 Schema? 数据库构架是一个独立于数据库用 户的非重复命名空间,构架是不能 嵌套的简述 SQL SERVER中最常用的 3 个全 局变量以

11、及全局变量和局部变量的 区别1.VERSION、 LANGOAG、E LOCK_TIMEOUT2. 用户只能使用预先定义的全局变 量,而不能修改,引用时必须以标 记符 开头,局部变量被引用时要 在其名称前加上标志 ,且必须先用 DECLARE声明后才可以使用。 简述什么是批处理及其特点?什么 是 T-SQL 脚本及其特点? 1)批处理就是一条或多条 T-SQL 语 句,为一个目标执行批处理可减少 系统开销,GO命令表示批处理结束, 若语句中无 GO命令, 则按照单个批 处理执行。( 2) T-SQL脚本是储存在文件中一 序列的 T-SQL 语句,包含一个或多 个批处理。脚本可用来做副本,在 机

12、器间共享,分析及学习代码。 声明整数变量 var,使用 CASE流程 控制语句判断 var 值等于 1,等于 2 或者两者都不等。当 var 值为 1 时,输出字符串” var is 1”; 当 var值为 2 时,输出字符串” var is 2”;否则输出字符串” var is not 1 or 2 ”。DECLARE VAR intSELECTCASEwhen VAR=1 thenVAR is 1 when VAR=2 thenVAR is 2 else VAR is not 1 or 2 end编程计算 1100 之间所有能被 3 整 除的数的个数 count 和总和 sum, 并分别用

13、 Select 语句和 Print 语句 两种方法输出个数 count 和总和 sum。declare i int declare sum int declare count int Select i=1 Select sum=0 Select count=0 while i=100beginif i%3=0Select sum=sum+iSelect count=count+1 endSelect i=i+1PRINT总和是 +STR(SUM) PRINT总数是 +STR(count) 用 T-SQL语言编程输出 3100 之内 的素数。declare a int,b int,i int s

14、et i=3 while i100 begin set a=2 set b=0 while (ai) beginif (i%a=0)beginset b=1breakendset a=a+1endif b=0 print iset i=i+1 end第五章 使用数学函数进行如下运算:(1) 计算 18 除以 5的商和余数。 SELECTF LOOR(18/5),FLOOR(18%5); ( 2)将弧度值 PI()/4 转换为角度 值。SELECT DEGREES(PI()/4);( 3)计算 9 的 4 次方值。SELECT POWER(9,4);( 4)保留浮点值 3.14159 小数点后

15、面 2 位。SELECT ROUND(3.14159,2); 2、使用字符串函数进行如下运算: ( 1)分别计算字符串“ Hello World! ”和“ University ”的长度。 SELECT LEN(Hello World!),LEN(University);( 2)从字符串 “Nice to meet you! ” 中获取子字符串“ meet”。SELECT SUBSTRING(Nice to meet you!,9,4);(3) 除去字符串“ h e l l o ”中 的空格 。SELECT REPLACE(h e l l o, ,);( 4)将字符串“ SQLServer”逆

16、序 输出。SELECT REVERSE(SQLSserver); (5)在字符串“ SQLServerSQLServer ”中,从第4 个字母开始查找字母 Q 第一次出 现的位置。SELECT CHARINDEX(Q,SQLServerSQLSer ver,4);3、使用日期和时间函数经行如下运 算:(1)计算当前日期是一年的第几天。 SELECTDATEPART(DAYOFYEAR,GETDATE();(2) 计算当前日期是一周中的第几 个工作日。DECLARE week INT;SELECT week=(SELECT DATEPART(WEEKDAY,GETDATE()-1)IF week

17、0PRINT 今天是第 +CONVERT(varchar,week) + 个工 作日 ;ELSEPRINT 今天是休息日 ;(3) 计算“ 1929-02-14 ”与当前日 期之间相差的年份。SELECT DATEDIFF(YEAR,1929-02-14,GET DATE()第六章 插入 dept 表数据: INSERT INTO dept VALUES (10,ACCOUNTING,ShangHai), 计算所有女员工( F)的工龄。 SELECTe _name 员工姓名 ,hireDate 入日期期 , DATEDIFF(YEAR,hireDate,GETDATE () 工龄 FROM e

18、mployee WHERE e_gender=女 ;使用 TOP查询或者 RANK查询从第 3 条记录开始到第 6 条记录。-(1)Top:SELECT TOP (4) e_no 员工编 号 ,e_name 员工姓名 ,e_gender 员工性别 , dept_no 部门编号 ,e_job 职 位 ,e_salary 薪水 ,hireDate 入职 日期FROM employeeWHEREe_ no NOTI N (SELECT TOP( 2) e_no FROM employee);-(2)RankSELECTe _no 员工编号 ,e_name 员 工姓名 ,e_gender 员工性别 ,

19、 dept_no 部门编号 ,e_job 职 位 ,e_salary 薪水 ,hireDate 入职 日期FROM (SELECT RANK() OVER (ORDER BY e_no ASC) AS num,*FROM employee) AS e1WHERE e1.num BETWEEN 3 AND 6;查询获得销售人员( SALESMA)N 的 最低工资的员工的薪水及员工编号、 员工姓名、入职日期。SELECT e_no 员工编号 ,e_name 员 工姓名 ,hireDate 入职日 期 ,e_salary 薪水FROM employee WHERE e_job=SALESMAN AN

20、D e_salary=(SELECT MIN(e_salary) FROM employee WHERE e_job=SALESMAN);查询名字以字母 N或者 S 结尾的记 录。SELECTe _no 员工编号 ,e_name 员 工姓名 ,e_gender 员工性别 , dept_no 部门编号 ,e_job 职 位 ,e_salary 薪水 ,hireDate 入职 日期FROM employeeWHERE e_name LIKE%N OR e_name LIKE%S;查询在 BeiJing 工作的员工姓名和 职务。- 方法一:SELECTe _name 员工姓名 ,e_job 职 位F

21、ROM employeeWHERE dept_no=(SELECT d_no FROM dept WHERE d_location=BeiJing);分别使用左连接和右连接和全连接 方式查询员工表和部门表,显示员 工详细信息及部门名称、 部门地址。( 1):使用左连接方式查询 employee 和 dept 表 SELECT employee.e_no 员工编 号 ,employee.e_name 员工姓 名 ,employee.e_gender 性 别 ,e_job 职位 ,e_salary 薪 水 ,hireDate 入职日期 , dept.d_name 部门名 称 ,dept.d_loc

22、ation工作地点FROM employee LEFT OUTER JOIN deptON employee.dept_no=dept.d_no ( 2):使用右连接方式查询 employee 和 dept 表 SELECT employee.e_no 员工编 号 ,employee.e_name 员工姓 名 ,employee.e_gender 性 别 ,e_job 职位 ,e_salary 薪 水 ,hireDate 入职日期 , dept.d_name 部门名 称 ,dept.d_location工作地点FROM employee RIGHT OUTER JOIN deptON empl

23、oyee.dept_no=dept.d_no ( 3):使用全连接方式查询 employee 和 dept 表 SELECT employee.e_no 员工编 号 ,employee.e_name 员工姓 名 ,employee.e_gender 性 别 ,e_job 职位 ,e_salary 薪 水 ,hireDate 入职日期 , dept.d_name 部门名 称 ,dept.d_location工作地点FROM employee FULL OUTER JOIN deptON employee.dept_no=dept.d_no 查询所有 2001 到 2005 年入职的员 工的信息,

24、查询部门编号为 20 和 30 的员工信息并使用 UNION合并两 个查询结果。SELECTe _no 员工编号 ,e_name 员 工姓名 ,e_gender 员工性别 , dept_no 部门编号 ,e_job 职 位 ,e_salary 薪水 ,hireDate 入职 日期FROM employee WHERE (SELECT DATEPART(YEAR,hireDate) IN(2001,2002,2003,2004,2005) UNIONSELECTe _no 员工编号 ,e_name 员 工姓名 ,e_gender 员工性别 , dept_no 部门编号 ,e_job 职 位 ,e

25、_salary 薪水 ,hireDate 入职 日期FROM employeeWHERE dept_no IN (20,30);使用 LIKE 关键字查询员工姓名中 包含字母 a 的记录。SELECTe _no 员工编号 ,e_name 员 工姓名 ,e_gender 员工性别 , dept_no 部门编号 ,e_job 职 位,e_salary 薪水 ,hireDate 入职 日期FROM employee WHERE e_name LIKE %A%; 分组统计并显示各个部门员工的最 高工资、最低工资、平均工资,并 且按平均工资升序排序。SELECT d_name 部门名 称 ,MAX(e_

26、salary) AS 最高工 资,MIN(e_salary) AS 最低工 资,AVG(e_salary) AS 平均工资 FROM employee LEFT OUTER JOIN dept ON employee.dept_no=dept.d_no GROUP BY d_name ORDER BY AVG(e_salary) ASC;第九章 事务和锁在应用上的区别是什么? 事务将一段 T-SQL 语句作为一个单 元来处理, 这些操作要么全部成功, 要么全部失败。 事务包含 4 个特性: 原子性、一致性、隔离性、和持久 性,事务的执行方式分为自动提交 事务、显示事务、隐式事务和分布 式事务。事务以“ BEGIN TRAN”语 句开始,并以“ COMMIT TRA”N 或 “ROLLBACKT RAN”语句结束。锁是 另一个和事务紧密联系的概念,对 于多用户系统,使用锁来保护制定 的资源。在事务中使用锁,防止其 他用户修改另一个事务还没有完成 的事务中的数据, SQL Serve 中有 多种类型的锁,允许事务锁定不同 的资源。事务和锁有什么关系?SQL Server 2012 中可以使用多

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论