sql复习材料及factory数据库答案
SQL基础知识题库100道及答案(完整版)
SQL基础知识题库100道及答案(完整版)1. 在SQL 中,用于创建表的语句是()A. CREATE TABLEB. INSERT INTOC. UPDATED. DELETE答案:A2. 以下哪个关键字用于在SQL 中添加数据()A. ADDB. INSERTC. APPENDD. PUT答案:B3. 在SQL 中,用于从表中检索数据的语句是()A. SELECTB. GETC. FETCHD. REQUEST答案:A4. 以下哪个关键字用于在SQL 中更新数据()A. MODIFYB. CHANGEC. UPDATED. REPLACE答案:C5. 要从表中删除数据,应使用的SQL 语句是()A. DROPB. DELETEC. REMOVED. CLEAR答案:B6. SQL 中用于创建索引的关键字是()A. CREATE INDEXB. MAKE INDEXC. BUILD INDEXD. ESTABLISH INDEX答案:A7. 以下哪种数据类型用于存储整数()A. INTB. FLOATC. VARCHARD. DATE答案:A8. 用于存储字符串的常见数据类型是()A. CHARB. INTC. DECIMALD. DOUBLE答案:A9. 在SQL 中,用于对结果集进行排序的关键字是()A. SORTB. ORDER BYC. ARRANGED. ALIGN答案:B10. 以下哪个运算符用于等于比较()A. =B. ==C. <>D. >答案:A11. 用于不等于比较的运算符是()A.!=B. < >C. NOT EQUALSD. DIFFERENT答案:B12. 以下哪个运算符用于大于比较()A. >B. >=C. <D. <=答案:A13. 用于小于比较的运算符是()A. <B. <=C. >D. >=答案:A14. 以下哪个关键字用于在SQL 中进行分组操作()A. GROUP BYB. SORT BYC. CLASSIFY BYD. CATEGORIZE BY答案:A15. 聚合函数SUM 用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最小值答案:A16. 聚合函数AVG 用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最大值答案:B17. COUNT 函数用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最小值答案:C18. MAX 函数用于()A. 计算总和B. 计算平均值C. 计算最大值D. 计算最小值答案:C19. MIN 函数用于()A. 计算总和B. 计算平均值C. 计算最大值D. 计算最小值答案:D20. 在SQL 中,用于连接两个表的关键字是()A. JOINB. CONNECTC. LINKD. BIND答案:A21. 内连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:A22. 左连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:B23. 右连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:C24. 全连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:D25. 在SQL 中,用于限制结果集行数的关键字是()A. LIMITB. RESTRICTC. BOUNDD. CONSTRAINT答案:A26. 以下哪个子句用于在SQL 中进行条件筛选()A. WHEREB. HAVINGC. FROMD. GROUP BY答案:A27. HAVING 子句通常与()一起使用A. GROUP BYB. ORDER BYC. WHERED. FROM答案:A28. 在SQL 中,用于创建视图的语句是()A. CREATE VIEWB. MAKE VIEWC. BUILD VIEWD. ESTABLISH VIEW 答案:A29. 以下哪个关键字用于删除视图()A. DROP VIEWB. DELETE VIEWC. REMOVE VIEWD. CLEAR VIEW 答案:A30. 要在SQL 中添加注释,可以使用()A. //B. /* */C. #D. --答案:D31. 在SQL 中,以下哪种数据类型用于存储日期和时间()A. DATEB. TIMEC. DATETIMED. TIMESTAMP答案:C32. 用于提取日期部分的函数是()A. DATEPART()B. DAY()C. MONTH()D. YEAR()答案:A33. 以下哪个函数用于计算字符串的长度()A. LENGTH()B. SIZE()C. COUNT()D. LEN()答案:A34. 在SQL 中,用于将字符串转换为大写的函数是()A. UPPER()B. TO_UPPER()C. CAPITALIZE()D. BIGCASE()答案:A35. 用于将字符串转换为小写的函数是()A. LOWER()B. TO_LOWER()C. SMALLCASE()D. DECAPITALIZE()答案:A36. 以下哪个函数用于去除字符串两端的空格()A. TRIM()B. CLEAN()C. REMOVE_SPACES()D. STRIP()答案:A37. 在SQL 中,用于执行事务的语句是()A. BEGIN TRANSACTIONB. START TRANSACTIONC. OPEN TRANSACTIOND. INITIATE TRANSACTION答案:A38. 提交事务使用的语句是()A. COMMITB. SUBMITC. CONFIRMD. VALIDATE答案:A39. 回滚事务使用的语句是()A. ROLLBACKB. REVERTC. CANCELD. ABORT答案:A40. 以下哪个关键字用于在SQL 中创建存储过程()A. CREATE PROCEDUREB. MAKE PROCEDUREC. BUILD PROCEDURED. ESTABLISH PROCEDURE答案:A41. 调用存储过程使用的语句是()A. EXECUTEB. CALLC. INVOKED. RUN答案:B42. 在SQL 中,用于删除存储过程的语句是()A. DROP PROCEDUREB. DELETE PROCEDUREC. REMOVE PROCEDURED. CLEAR PROCEDURE答案:A43. 以下哪个关键字用于在SQL 中创建触发器()A. CREATE TRIGGERB. MAKE TRIGGERC. BUILD TRIGGERD. ESTABLISH TRIGGER44. 删除触发器使用的语句是()A. DROP TRIGGERB. DELETE TRIGGERC. REMOVE TRIGGERD. CLEAR TRIGGER答案:A45. 在SQL 中,用于授予权限的语句是()A. GRANTB. ALLOWC. PERMITD. AUTHORIZE答案:A46. 收回权限使用的语句是()A. REVOKEB. DENYC. REFUSED. FORBID答案:A47. 以下哪个关键字用于在SQL 中创建索引的唯一性约束()A. UNIQUEB. PRIMARY KEYC. FOREIGN KEYD. CHECK答案:A48. 用于定义主键约束的关键字是()A. PRIMARY KEYB. UNIQUE KEYC. FOREIGN KEYD. INDEX KEY答案:A49. 外键约束使用的关键字是()A. FOREIGN KEYB. OUTER KEYC. RELATED KEYD. REFERENCED KEY答案:A50. 以下哪个约束用于检查数据的有效性()A. CHECKB. VALIDATEC. INSPECTD. VERIFY答案:A51. 在SQL 中,以下哪个语句用于创建数据库()A. CREATE DATABASEB. MAKE DATABASEC. BUILD DATABASED. ESTABLISH DATABASE 答案:A52. 要删除数据库,应使用的语句是()A. DROP DATABASEB. DELETE DATABASEC. REMOVE DATABASED. CLEAR DATABASE 答案:A53. 以下哪个关键字用于在SQL 中切换数据库()A. USEB. SELECT DBC. CHANGE DBD. SWITCH DB答案:A54. 在SQL 中,以下哪种操作可以对多个表同时进行()A. 联合查询B. 子查询C. 交叉连接D. 内连接55. 子查询可以在以下哪个子句中使用()A. SELECTB. FROMC. WHERED. 以上都可以答案:D56. 以下哪个语句用于在SQL 中创建用户()A. CREATE USERB. MAKE USERC. BUILD USERD. ESTABLISH USER答案:A57. 删除用户使用的语句是()A. DROP USERB. DELETE USERC. REMOVE USERD. CLEAR USER答案:A58. 在SQL 中,用于修改表结构的语句是()A. ALTER TABLEB. MODIFY TABLEC. CHANGE TABLED. UPDATE TABLE答案:A59. 以下哪个操作可以添加列到表中()A. ADD COLUMNB. INSERT COLUMNC. APPEND COLUMND. PUT COLUMN答案:A60. 要删除表中的列,应使用()A. DROP COLUMNB. DELETE COLUMNC. REMOVE COLUMND. CLEAR COLUMN答案:A61. 在SQL 中,以下哪个关键字用于对结果集进行分页()A. PAGEB. PAGINGC. OFFSETD. LIMIT答案:D62. 以下哪个函数用于返回当前日期()A. CURDATE()B. NOW()C. CURRENT_DATE()D. TODAY()答案:C63. 用于返回当前时间的函数是()A. CURTIME()B. NOW()C. CURRENT_TIME()D. THIS_TIME()答案:C64. 在SQL 中,以下哪个关键字用于为表中的列设置默认值()A. DEFAULTB. INITIALC. BASED. START答案:A65. 以下哪个语句用于在SQL 中重命名表()A. RENAME TABLEB. MODIFY TABLE NAMEC. CHANGE TABLE NAMED. UPDATE TABLE答案:A66. 要获取表的结构信息,可以使用以下哪个语句()A. DESCRIBE TABLEB. SHOW TABLE STRUCTUREC. EXPLAIN TABLED. GET TABLE DETAILS答案:A67. 在SQL 中,以下哪个关键字用于在查询结果中去除重复行()A. DISTINCTB. UNIQUEC. SINGLED. ONLY答案:A68. 以下哪个函数用于对字符串进行拼接()A. CONCAT()B. JOIN()C. MERGE()D. COMBINE()答案:A69. 在SQL 中,用于创建临时表的关键字是()A. TEMPORARY TABLEB. TEMP TABLEC. TRANSIENT TABLED. SHORT_LIVED TABLE答案:A70. 以下哪个语句用于在SQL 中为列添加注释()A. COMMENT ON COLUMNB. NOTE ON COLUMNC. REMARK ON COLUMND. EXPLAIN COLUMN答案:A71. 在SQL 中,以下哪个关键字用于在子查询中引用外部查询的结果()A. CORRELATEDB. RELATEDC. CONNECTEDD. LINKED答案:A72. 以下哪个操作符用于在SQL 中进行范围查询()A. BETWEENB. INC. LIKED. EXISTS答案:A73. 用于模糊匹配的操作符是()A. LIKEB. SIMILARC. MATCHD. CLOSE_TO答案:A74. 在SQL 中,以下哪个关键字用于对查询结果进行排序时按照多个列进行()A. ORDER BY MULTIPLEB. SORT BY SEVERALC. ORDER BY MORE THAN ONED. ORDER BY MULTIPLE COLUMNS答案:D75. 以下哪个函数用于返回字符串的子串()A. SUBSTRING()B. PART()C. SEGMENT()D. SLICE()答案:A76. 在SQL 中,以下哪个关键字用于在存储过程中定义输入参数()A. INB. OUTC. INOUTD. PARAMETER答案:A77. 用于定义输出参数的关键字是()A. INB. OUTC. INOUTD. PARAMETER答案:B78. 以下哪个关键字用于在存储过程中定义既可以输入又可以输出的参数()A. INB. OUTC. INOUTD. PARAMETER答案:C79. 在SQL 中,以下哪个关键字用于在创建表时指定自增列()A. AUTO_INCREMENTB. SELF_INCREMENTC. AUTO_GROWD. SELF_GROW答案:A80. 以下哪个语句用于在SQL 中创建序列()A. CREATE SEQUENCEB. MAKE SEQUENCEC. BUILD SEQUENCED. ESTABLISH SEQUENCE 答案:A81. 要获取序列的下一个值,可以使用以下哪个函数()A. NEXTVAL()B. GET_NEXT()C. NEXT_VALUE()D. FOLLOWING_VALUE()答案:A82. 在SQL 中,以下哪个关键字用于锁定表()A. LOCKB. HOLDC. FREEZED. BLOCK答案:A83. 以下哪种锁类型用于防止其他事务读取或修改数据()A. 共享锁B. 排他锁C. 意向共享锁D. 意向排他锁答案:B84. 共享锁允许其他事务()A. 读取数据B. 修改数据C. 删除数据D. 以上都不行答案:A85. 在SQL 中,以下哪个关键字用于解锁表()A. UNLOCKB. RELEASEC. FREED. UNBIND答案:A86. 以下哪个函数用于计算两个日期之间的天数差()A. DATEDIFF()B. DATE_DIFFERENCE()C. DAY_DIFFERENCE()D. TIME_DIFFERENCE()答案:A87. 在SQL 中,以下哪个关键字用于在查询中使用别名()A. ASB. LIKEC. SAME ASD. EQUALS答案:A88. 以下哪个语句用于在SQL 中创建索引的唯一约束()A. UNIQUE INDEXB. PRIMARY INDEXC. FOREIGN INDEXD. CHECK INDEX答案:A89. 要在SQL 中创建全文索引,应使用()A. FULLTEXT INDEXB. COMPLETE TEXT INDEXC. ALL_TEXT INDEXD. WHOLE_TEXT INDEX 答案:A90. 在SQL 中,以下哪个关键字用于在存储过程中声明变量()A. DECLAREB. DEFINEC. STATED. ANNOUNCE答案:A91. 以下哪个语句用于在SQL 中为变量赋值()A. SETB. ASSIGNC. GIVED. PUT答案:A92. 在SQL 中,以下哪个关键字用于在存储过程中进行条件判断()A. IFB. WHENC. CASED. CHECK答案:A93. 以下哪种语句用于在SQL 中进行循环操作()A. FORB. WHILEC. LOOPD. 以上都是答案:D94. 在SQL 中,用于退出循环的语句是()A. BREAKB. EXITC. STOPD. END答案:A95. 以下哪个函数用于将数字转换为字符串()A. CAST()B. CONVERT()C. TO_STRING()D. NUM_TO_STR()答案:B96. 在SQL 中,用于获取当前会话的用户名称的函数是()A. CURRENT_USERB. SYSTEM_USERC. LOGGED_IN_USERD. SESSION_USER答案:A97. 以下哪个关键字用于在SQL 中创建存储函数()A. CREATE FUNCTIONB. MAKE FUNCTIONC. BUILD FUNCTIOND. ESTABLISH FUNCTION 答案:A98. 要删除存储函数,应使用的语句是()A. DROP FUNCTIONB. DELETE FUNCTIONC. REMOVE FUNCTIOND. CLEAR FUNCTION答案:A99. 在SQL 中,用于获取数据库版本信息的函数是()A. VERSION()B. DB_VERSION()C. DATABASE_VERSION()D. SYSTEM_VERSION()答案:A100. 以下哪个操作可以在SQL 中对表进行重命名()A. RENAME TABLEB. MODIFY TABLE NAMEC. CHANGE TABLE NAMED. UPDATE TABLE NAME答案:A。
SQL复习题及答案
《SQL SERVER数据库应用》复习资料一、考试题型及分数比例1、单项选择题(每空2分,共40分)2、填空题(每空1分,共20分)3、简答题(每题5分,共10分)4、综合应用题(每题10分,共30分)二、复习题下面按章给出第1章—第10章的复习题。
第1章数据库基础概述一、单项选择题1.数据库系统管理阶段的主要优点表现在______。
(A)数据共享性高(B)数据冗余度低(C)数据与程序的独立性高(D)以上全对答案:A2. SQL Server是一种基于______的数据库管理系统软件。
(A)层次模型(B)网状模型(C)关系模型(D)数据模型答案:C3.数据操纵语言(DML)提供用户对数据库进行数据的查询和处理操作,在SQL Server 中,通常不包括________语句。
(A)Insert (B)Update (C)Delete (D)Create答案:D4.________的主要任务是决定数据库的内容,对数据库进行修改和维护,对数据库的运行状态进行监督,并且管理用户帐号、备份和恢复数据库以及提高数据库的运行效率。
(A)系统管理员(B)数据库管理员(C)应用程序员(D)操作员答案:B5.,一个表的主键(Primary Key)是由一个或多个字段组成,其值具有唯一性,而且不允许为空(NULL),其主要作用是________。
(A)唯一地标识表中的每条记录(B)自动生成标识数据(C)快速实现记录定位(D)以上都不对答案:A6.一个数据库可能包含多个表,一般通过______使这些表之间关联起来。
(A)热键(B)快速键(C)外键(D)快捷键答案:C7.在关系数据库系统中,设计表时可对表中的一个字段或多个字段的组合设置约束条件,让DBMS检查数据是否符合约束条件,约束一般可以分为________。
(A)表级约束和字段级约束(B)主键约束和外键约束(C)唯一性约束和检查约束(D)缺省约束和空值约束答案:A8.主键约束(Primary Key)和唯一性约束(UNIQUE)都可以保证表中记录不重复,二者主要区别是________。
SQL数据库题库及答案
SQL数据库题库及答案⼀、单项选择题,请将正确答案填在括号⾥。
1、()是位于⽤户与操作系统之间的⼀层数据管理软件.A、数据库管理系统B、数据库系统C、数据库D、数据库应⽤系统2、要想使SQL Server2000数据库管理系统开始⼯作,必须⾸先启动()。
A、数据导⼊和导出程序B、查询分析器C、⽹络实⽤⼯具D、SQL Server服务器3、SQL Server 的登录账户信息保存在()数据库中。
A、masterB、modelC、 msdbD、tempdb4、以下哪个数据库⾓⾊中拥有可以执⾏所有数据库⾓⾊的活动的权限? ( )A、publicB、db_ownerC、db_security adminD、db_access admin5、下列关于数据库的数据⽂件叙述错误的是()。
A 、创建数据库时必须指定数据⽂件B 、创建数据库时, PRIMARY ⽂件组中的第⼀个⽂件为主数据⽂件C 、⼀个数据库可以有多个数据⽂件D 、⼀个数据库只能有⼀个主数据⽂件6、创建约束的命令是()。
A、CREATE TABLEB、ALTER CONSTRAINTC、ALTER TABLED、ALTER COLUMN7、下列有关批的叙述中正确的是()。
A、批是⼀起提交处理的⼀组语句B、通常⽤GO来表⽰⼀个批的结束C、不能在⼀个批中引⽤其它批定义的变量D、批可长可短,在批中可以执⾏任何T-SQL语句8、下⾯关于聚集索引和⾮聚集索引说法正确的是()。
A、每个表只能建⽴⼀个⾮聚集索引B、⾮聚集索引需要较多的硬盘空间和内存C、⼀张表上不能同时建⽴聚集和⾮聚集索引D、⼀个复合索引只能是聚集索引9、下列命令不能执⾏的是()。
A、 SELECT * FROM [select]B、 SELECT * FROM @MyTableC、 SELECT * FROM [MyTable]D、 SELECT * FROM MyTable10、并发操作会带来的数据不⼀致性有()。
sql数据库习题与答案
sql数据库习题与答案SQL数据库习题与答案SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言。
在数据库管理系统中,SQL可以用于执行各种操作,如插入、更新、删除和查询数据。
对于学习SQL的人来说,练习SQL数据库习题是非常重要的。
下面将为大家提供一些常见的SQL数据库习题以及相应的答案。
1. 查询所有学生的信息答案:SELECT * FROM students;2. 查询所有学生的姓名和年龄答案:SELECT name, age FROM students;3. 查询所有学生的姓名,并按照年龄从小到大进行排序答案:SELECT name FROM students ORDER BY age;4. 查询学生表中年龄大于18岁的学生信息答案:SELECT * FROM students WHERE age > 18;5. 查询学生表中姓“张”的学生信息答案:SELECT * FROM students WHERE name LIKE '张%';6. 查询学生表中的姓名和对应的课程名称答案:SELECT , FROM students INNER JOIN course ON students.course_id = course.id;7. 查询学生表中每个班级的学生人数答案:SELECT class, COUNT(*) FROM students GROUP BY class;通过以上SQL数据库习题与答案的练习,可以帮助大家更好地理解和掌握SQL语言的基本操作和常用查询。
同时,也可以帮助大家提升解决实际问题的能力,为今后的数据库管理工作打下坚实的基础。
希望大家能够认真对待SQL数据库习题,不断提升自己的技能水平。
(完整版)SQL复习题(附部分答案)
一、单选题1.根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(___)A.只存在一对多的实体关系,以图形方式来表示。
B.以二维表格结构来保存数据,在关系表中不允许有重复行存在。
C.能体现一对多、多对多的关系,但不能体现一对一的关系。
D.关系模型数据库是数据库发展的最初阶段。
答案[B]2、在“连接”组中有两种连接认证方式,其中在(___)方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。
A、Windows身份验证B、SQL Server 身份验证C、以超级用户身份登录时D、其他方式登录时答案[B]3、关系数据库中,主键是(___),当运用Transact-SQL语句创建主键时,可以是(__)。
⑴ A、为标识表中唯一的实体 B、创建唯一的索引,允许空值C、只允许以表中第一字段建立D、允许有多个主键的⑵ A、create table table1(column1 char(13) not null primary key,column2 int not on primary key;B、alter table table1 with nocheck addconstraint [PK_table1] primary key nonclustered ( column1) on primary;C、alter table table1 column1 primary key ;答案[ A C]4、视图是一种常用的数据对象,可以简化数据库操作,当使用多个数据表来建立视图时,不允许在该语句中包括(___)等关键字。
A、ORDER BY,COMPUTEB、ORDER BY,COMPUTE,COMPUTR BYC、ORDER BY,COMPUTE BY,GROUP BYD、GROUP BY,COMPUTE BY答案[B ]5、在Transact-SQL语法中,SELECT语句的完整语法较复杂,但至少包括的部分(_1_),使用关键字(_2_)可以把重复行屏蔽,将多个查询结果返回一个结果集合的运算符是(_3__),如果在SELECT语句中使用聚合函数时,可以在后面使用(_4_)。
SQL数据库复习资料操作题复习(带答案)
使用T-SQL语句完成下列题目,保存所有SQL语句为一个脚本文件,文件名为学号姓名.sql,SQL语句前加上题号。
(共60分)一、创建数据库创建一个数据库,数据库名为student,主数据文件的逻辑名为student_data,物理名称为student_data.mdf,存放在D盘根目录下,初始大小为10MB,最大可增长到50MB,增长方式是按5%比例增长;日志文件的逻辑名称为student_log,物理名称为student_log.ldf,存放在D盘根目录下,初始大小为2MB,最大可增长到5MB,按1MB 增长。
create database studenton primary(name=student_data,filename='D:\student_data.mdf',size=10MB,maxsize=50MB,filegrowth=5%)log on(name=student_log,filename='D:\student_log.ldf',size=2MB,maxsize=5MB,filegrowth=1MB)二、创建表create table 学生(学号char(8) primary key,姓名char(20) not null,性别char(2) not null check(性别in('男','女')),出生日期datetime null)use studentcreate table 成绩(学号char(8),课程名varchar(30),成绩real null check(成绩between 0 and 100)primary key(学号,课程名),foreign key (学号) references 学生(学号))3、在gxc数据库中创建商品表,表名:sp。
结构如下:use gxcCreate table sp(bh char(20) primary key,mc varchar(50) not null,xkc real,sj money)4、在gxc数据库中创建供应表,表名:gy。
sql数据库factory上机练习有答案
1)显示所有职工的年龄select 职工号,姓名,year(getdate())-year(出生日期)as 年龄from worker2)求出各部门的党员人数select 部门名,count(*)as 党员人数from worker,depart where worker.部门号=depart.部门号and 党员否=1 group by 部门名3)显示所有职工的姓名和2004年1月份工资(简单)select 姓名,工资from salary where year(日期)='2004' and month(日期)=’1’4)显示所有职工的职工号、姓名和平均工资select 职工号,姓名,avg(工资) as 平均工资from salarygroup by 职工号,姓名5)显示所有职工的职工号、姓名、部门名和2004年2月份工资,并按部门名顺序排列。
select x.职工号,x.姓名,部门名,工资as '2月份工资'from worker x,depart y,salary zwhere x.部门号=y.部门号and x.职工号=z.职工号and 日期='2004-02-03' order by 部门名6)显示各部门名和该部门的所有职工平均工资。
select 部门名,avg(工资) as '平均工资' from worker x,depart y,salary z where x.部门号=y.部门号and x.职工号=z.职工号group by 部门名7)显示所有平均工资高于1200的部门名和对应的平均工资。
select 部门名,avg(工资) as '平均工资' from worker x,depart y,salary z where x.部门号=y.部门号and x.职工号=z.职工号group by 部门名having avg(工资)>12008)显示所有职工的职工号、姓名和部门类型,其中财务处和人事处属管理部门,市场部属市场部门。
SQL数据库题库及答案 (1)
实训131.使用T-SQL语句创建“Windows身份验证”登录名(对应的Windows用户为testwin)。
create login [stu1001\testwin]from windowsexec sp_addlogin 'aa' , '123' /*用存储过程创建sql登录名*/2.使用T-SQL语句查看所创建的登录名“testwin”的属性。
select loginname,sid from master.sys.syslogins3.使用T-SQL删除登录名“testwin”。
drop login [stu1001\testwin]4.使用SSMS创建与登录名“testsql”对应的数据库用户“sqluser”(对应于数据库WebShop),并查看其属性5.使用SSMS删除数据库用户“sqluser”。
6.使用T-SQL语句创建与登录名“testwin”对应的数据库用户“winuser”。
use webshopcreate user [winuser] for login [stu1001\testwin]7.将数据库用户“winuser”修改为“win”。
use webshopalter user [winuser]with name=win/*Alter User的语法结构:ALTER USER userNameWITH <set_item> [ ,...n ]<set_item> ::=NAME = newUserName| DEFAULT_SCHEMA = { schemaName | NULL }| LOGIN = loginName| PASSWORD = 'password' [ OLD_PASSWORD ='oldpassword' ]| DEFAULT_LANGUAGE = { NONE | <lcid> | <language name> | <language alias> }*/1.使用SSMS或T-SQL语句查看WebShop数据库中数据库用户的信息。
数据库SQL习题答案
第1章数据库系统概述二.1.答:该学校的教学管理E-R模型有以下实体:系、教师、学生、项目、课程。
各实体属性如下:系(系编号,系名,系主任)教师(教师编号,教师姓名,职称)学生(学号,姓名,性别,班号)项目(项目编号,名称,负责人)课程(课程编号,课程名,学分)各实体之间的联系如下:教师担任课程的1:n“任课”联系教师参加项目的n:m“参加”联系学生选修课程的n:m“选修”联系系、教师和学生之间的所属关系的1:m:n“领导”联系对应的E-R模型如图1.1所示。
图1.1 E-R图2.答:计算结果如下:R∪S R∩S R-S R╳T3.答:计算结果如下:R SσA=C (R S) A B C a b c A R.B S.B C a b d a b b c A R.B S.B C c b c a b b d a b e a c b d c b b c c b b c de acbbddebd4. 答:(1)它是2NF 。
因为R 的候选关键字为课程名,而“课程名→教师名”,“教师名→课程名”不成立,教师名→教师地址,所以课程名 t 教师地址,即存在非主属性教师地址对候选关键字课程名的传递函数依赖,因此R 不是3NF 。
又因为不存在非主属性对候选关键字的部分函数依赖,所以R 是2NF 。
(2)存在删除操作异常。
当删除某门课程时会删除不该删除的教师的有关信息。
(3)分解为高一级范式如下:R 1课程名 教师名 R2 W1 任我行 教师名 教师地址 W2 张三丰 任我行 D1 W3 郭靖 张三丰 D1 W4张三丰郭靖D2分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不会丢失教师方面的信息。
5.答: 令X=D ,X(0)=D 。
在F 中找出左边是D 子集的函数依赖,其结果是D →HG ,所以X(1)=X(0)HG=DGH ,显然有X(1)≠X(0)。
在F 中找出左边是DGH 子集的函数依赖,未找到,则X(2)=DGH 。
SQL数据库完整版答案.docx
1、T-SQL语言中,用什么关键字定义局部变量,用什么关键字给变量赋值。
(p52)答:使用DECLARE/declare关键字来定义局部变量;用SET/set和SELECT/select语句给变量赋值;2、自定义函数有几种?(p211)答:自定义函数有3种:标量值、内嵌表值、多语句表值3、局部变量以什么开头?全局变量以开头?答:局部变量是以@开头,全局变量是以@@开头;4、数据完整性包括哪几种?(pl79)答:数据完整性包括二种:完体完整性、域完整性、参照完整性;5、MS-SQL数据库中通常包含哪三类文件?(pll6)答:MS-SQL数据库通常包含着:主数据文件(.mdf) >次耍数据文件(・ndf)、事务日志文件(.ldf);6、MS-SQL数据控制语言中,使用什么关键字授予权限,使用什么关键字撤销权限?(p95)答:使用GRANT/grant关键字授予权限,使用REVOKE/revoke关键字撤销权限,使用DENY/deny关键字拒绝用户访问;7、DML触发器中,AFTER触发器和INSTEAD OF触发器有什么区别?(p235)答:(1) AFTER触发器只能在表上定义该类的触发器,并且只有执行INSERT,UPDATE和DELETE操作Z后,才会触发;(2) INSTEAD OF触发器该类型触发器不执行INSERT, UPDATE 和DELETE操作,而只是执行触发器木身;而且还可以在基于一个或多个基表的视图上定义;8、S QL SERVER中聚焦索引和非聚焦索引有什么区别?(pl69)答:聚集索引:该索引中键值的逻辑顺序决定了表中和应行的物理顺序,一个表中只能有一个聚集索引非聚集索引:该索引是数据表中行的物理顺序与索引键值的逻辑顺序不相同,仅指向表中数据,可以在表中定义,但其检测效率较低。
作为和数据表分离的对象操作,表中的每一列都有自己的自己的索引。
9、能够激活DML触发器的数据修改语句是使用INSERT\UPDATE\DELETE\SELECT 中明B个选项? UPDATE10、数据库备份的类型有哪几种?能够将数据恢复到某个时间点的备份设置是哪个?(P131)答:(1)数据库备份的类型有四种:完整数据备份、差异数据库备份、事务日志备份、文件和文件组备份;(2)能将数据库恢复到某个吋间点的备份设置是:事务日志备份;11 > SQL SERVER的登录账户信息保存在哪个系统数据库中?(pll7) 答:用户登录账户信息保存在master系统数据库中;12、语句INSERT SELECT语句有什么作用?(p92)答:(1) INSERT SELECT语句可以完成一次插入一个数据块的功能;(2)INSERT SELECT语句叮以把其他数据源的行添加到现有表中;复制表13、T-SQL语言的字符串常量是使用什么符号当作定界符?M答:字符串常量是使用’’单引号符号当作定界符;14、FOREIGN KEY约束定义了表之间的什么?(pl85)答:FOREIGN KEY约束定义对同一个表或另一个表屮具有PRIMARY KEY或UNIQUE约束的列的引用;(另一个答案):FOREIGN KEY约束定义了表之间的•个列或多列组合.15、域约束有哪几种?(pl79)答:域约束有:CHECK约束、DEFAULT约束。
sql数据库试题及答案
sql数据库试题及答案SQL数据库试题一1. 下面哪个命令可以创建一个名为"employee"的表格?A. CREATE TABLE employee;B. NEW TABLE employee;C. ADD TABLE employee;D. INSERT TABLE employee;答案:A. CREATE TABLE employee;2. 下列哪个是SQL数据库的关键字?A. SELECTB. COLUMNC. INSERTD. ADD答案:A. SELECT3. 在SQL中,如何查询一个名为"customers"的表格的所有记录?A. SELECT * FROM customers;B. SELECT ALL FROM customers;C. SELECT RECORDS FROM customers;D. SELECT DATA FROM customers;答案:A. SELECT * FROM customers;4. 如何在SQL中向表格中插入新的记录?A. ADD NEW INTOB. UPDATE TABLEC. INSERT INTOD. CREATE NEW答案:C. INSERT INTO5. 如何根据特定条件从表格中删除记录?A. REMOVE FROMB. ERASE ROWC. DELETE FROMD. DROP RECORD答案:C. DELETE FROMSQL数据库试题二1. 下面哪个关键字可以用来对查询结果进行排序?A. GROUP BYB. SORT BYC. ORDER BYD. ARRANGE BY答案:C. ORDER BY2. 在SQL中,如何对表格的指定列进行更新?A. MODIFY COLUMNB. EDIT TABLEC. UPDATE COLUMND. ALTER TABLE答案:C. UPDATE COLUMN3. 下面哪个函数可以计算表格中指定列的平均值?A. AVG()B. SUM()C. MAX()D. COUNT()答案:A. AVG()4. 在SQL中,如何查找表格中满足特定条件的记录数量?A. GET()B. FETCH()C. SEARCH()D. COUNT()答案:D. COUNT()5. 下面哪个关键字可以用来从多个表格中联合查询数据?A. UNIONB. JOINC. CONNECTD. COMBINE答案:B. JOIN文章到此结束,希望以上SQL数据库试题及答案能帮助到您对SQL数据库的理解和学习。
数据库期末考试题SQL及答案
数据库期末考试题SQL及答案一、单项选择题(每题2分,共10分)1. 在SQL中,用于创建新表的语句是:A. CREATE TABLEB. CREATE DATABASEC. INSERT INTOD. SELECT答案:A2. 如果想要查询所有学生的姓名和成绩,应该使用以下哪个SQL语句?A. SELECT name, score FROM students;B. SELECT * FROM students;C. SELECT name FROM students;D. SELECT score FROM students;答案:A3. 在SQL中,用于更新表中数据的语句是:A. INSERTB. UPDATEC. DELETED. SELECT答案:B4. 下列哪个函数用于计算字段值的平均值?A. AVG()B. SUM()C. COUNT()D. MAX()答案:A5. 如果想要删除名为“students”的表,应该使用以下哪个SQL语句?A. DROP TABLE students;B. REMOVE TABLE students;C. DELETE TABLE students;D. DESTROY TABLE students;答案:A二、多项选择题(每题3分,共15分)1. 下列哪些SQL语句用于查询数据?A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 在SQL中,以下哪些选项是数据类型?A. INTB. VARCHARC. DATED. BOOLEAN答案:A, B, C3. 以下哪些关键字用于连接表?A. JOINB. UNIONC. INTERSECTD. EXCEPT答案:A4. 在SQL中,哪些语句用于删除数据?A. DELETEB. DROPC. REMOVED. TRUNCATE答案:A, B, D5. 下列哪些函数用于字符串操作?A. CONCAT()B. LENGTH()C. SUBSTRING()D. SUM()答案:A, B, C三、填空题(每题3分,共15分)1. 在SQL中,使用________关键字来定义主键。
sql习题参考答案
sql习题参考答案SQL习题参考答案SQL(Structured Query Language)是一种用于管理和操作关系型数据库的语言。
在学习SQL时,练习习题是非常重要的,它们可以帮助我们巩固所学的知识,并提供实践的机会。
本文将为大家提供一些SQL习题的参考答案,以便读者们在学习过程中参考和对照。
1. 查询所有学生的姓名和年龄```sqlSELECT name, ageFROM students;```2. 查询所有学生的姓名和年龄,并按年龄降序排列```sqlSELECT name, ageFROM studentsORDER BY age DESC;```3. 查询所有学生的姓名和年龄,并按年龄升序排列,年龄相同时按姓名升序排列```sqlSELECT name, ageFROM studentsORDER BY age ASC, name ASC;```4. 查询所有学生的姓名和成绩,并显示成绩大于80分的学生```sqlSELECT name, scoreFROM studentsWHERE score > 80;```5. 查询所有学生的姓名和成绩,并显示成绩在70到90之间的学生```sqlSELECT name, scoreFROM studentsWHERE score BETWEEN 70 AND 90;```6. 查询所有学生的姓名和成绩,并显示成绩不在70到90之间的学生```sqlSELECT name, scoreFROM studentsWHERE score NOT BETWEEN 70 AND 90;```7. 查询所有学生的姓名和成绩,并按成绩分组,显示每个分数段的学生数量 ```sqlSELECT score, COUNT(*)FROM studentsGROUP BY score;```8. 查询所有学生的姓名和成绩,并按成绩分组,显示每个分数段的学生数量,并按数量降序排列```sqlSELECT score, COUNT(*)FROM studentsGROUP BY scoreORDER BY COUNT(*) DESC;```9. 查询所有学生的姓名和成绩,并显示成绩在每个分数段的平均成绩```sqlSELECT score, AVG(score)FROM studentsGROUP BY score;```10. 查询所有学生的姓名和成绩,并显示成绩在每个分数段的最高成绩```sqlSELECT score, MAX(score)FROM studentsGROUP BY score;```以上是一些常见的SQL习题及其参考答案。
SQL复习题(附部分答案)
语句。
(A)保存 (B)编写 (C)解释 (D)编译
答案[ D]
29、数据管理发展的三个阶段不包括(
)。
(A)人工管理阶段 (B)文件管理阶段
(C)数据库管理阶段 (D)智能管理阶段
答案[ D]
30、SQL 语言按照用途可以分为三类,不包括下面选项中的( )。
(A)DML (B)DCL (C)DQL (D)DDL
B.UPDATE,INSERT
C、DELETE,UPDATE
D.CREATE,INSERT INTO
答案[ A]
47、创建表的命令是( )。
A、 Create database 表名
B.Create VIEW 表名
C、 Create TABLE 表名
D.Alter TABLE 表名
答案[ C]
48、在 Transact-SQL 语法中,SELECT 语句的完整语法较复杂,但至少包括的部分
答案[ D]
19、 聚合函数的返回值是( )。
A、一个标量值 B、一组值 C、表达式 D、表
答案[ A]
20、关于主键描述正确的是:(
)
(A)包含一列
(B)包含两列
(C)包含一列或者多列 (D)以上都不正确
答案[ ]
22、在 SELECT 语句的 WHERE 子句的条件表达式中,可以匹配 0 个到多个字符的
(C).mdf (D).idf
答案[B ]
27、表示职称为副教授同时性别为男的表达式为(
)
A.职称=‘副教授' OR 性别=‘男'
B.职称=‘副教授' AND 性别=’男'
C.BETWEEN‘副教授' AND ’男'
sql复习材料及factory数据库答案
1、什么是数据库?数据库是长期存储在计算机内、有组织的、可共享的数据集合。
数据库是按某种数据模型进行组织的,存放在外存储器上,且可被多个用户同时使用。
因此,数据库具有较小的冗余度、较高的数据独立性和易扩展性。
2、数据库管理系统有哪些功能?数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它的主要功能包括以下几个方面;数据库定义功能DBMS提供相应数据定义语言来定义数据库结构,他们是刻画数据库的框架,并被保存在数据字典中。
数据字典是DBMS存取和管理数据的基本依据。
数据存取功能DBMS提供数据操纵语言实现对数据库数据的基本存取操作:检索、插入、修改和删除。
数据库运行管理功能DBMS提供数据控制功能,即数据的安全性、完整性和并发控制等对数据库运行进行有效的控制和管理,以确保数据库数据正确有效和数据库系统的有效运行。
数据库的建立和维护功能包括数据库初始数据的装入,书局哭得转储、恢复、重组织,系统性能监视、分析等功能。
这些功能大都由DBMS的实用程序来完成。
数据通信功能DBMS提供处理数据的传输,实现用户程序与DBMS之间的通信。
通常与操作系统协调完成。
3、在安装SQL Server 2000时,“仅客户端工具”、“服务器和客户端工具”及“仅连接”等3种安装定义有什么差别?仅客户端工具仅安装客户端关系数据库管理工具。
此选项含管理SQL Server的客户端工具和客户端连接组件。
服务器和客户端工具该选项执行安装股务器和客户端工具以创建具有管理能力的关系数据库服务器。
选择“服务器和客户端工具”选项将显示所有附加的安装选项。
仅连接仅安装关系数据库客户端连接组件,包括SQL Server2000命名实例所需的MDAC2.6(Micorsoft数据访问组件)。
该选项只提供连接工具,不提供客户端工具或其他组件。
4、一个数据库中包含哪几种文件?数据库具有惟一的主数据文件和一个或多个事务日志文件,数据库文件可能还有次数据文件。
sql课后习题答案
sql课后习题答案SQL课后习题答案在学习SQL课程时,课后习题是非常重要的一部分。
通过完成这些习题,我们可以加深对SQL语言的理解,提高自己的实际操作能力。
下面是一些SQL课后习题的答案,希望对大家的学习有所帮助。
1. 查询所有员工的信息```sqlSELECT * FROM employees;```2. 查询员工编号为1001的员工信息```sqlSELECT * FROM employees WHERE employee_id = 1001;```3. 查询员工表中的员工数量```sqlSELECT COUNT(*) FROM employees;```4. 查询员工表中的员工姓名和薪水```sqlSELECT employee_name, salary FROM employees;```5. 查询员工表中薪水大于5000的员工信息```sqlSELECT * FROM employees WHERE salary > 5000;```通过以上的习题答案,我们可以看到SQL语言的基本操作,包括查询、条件筛选、统计等。
这些都是我们在日常工作中经常会用到的操作,对于掌握SQL语言非常重要。
除了以上的习题,我们还可以通过实际的项目案例来练习SQL语言的应用。
例如,可以通过查询销售数据、客户信息等来加深对SQL语言的理解和掌握。
总的来说,通过课后习题的答案,我们可以更好地掌握SQL语言的基本操作,提高自己的实际操作能力,为以后的工作做好准备。
希望大家在学习SQL语言的过程中能够多加练习,不断提升自己的技能水平。
SQL试题精选及答案
SQL试题精选及答案1. 请写出SQL中创建新表的语句。
答案:CREATE TABLE 表名 (列1 类型, 列2 类型, ...);2. 如何在SQL中查询特定列的数据?答案:SELECT 列名 FROM 表名 WHERE 条件;3. 请解释SQL中的JOIN操作。
答案:JOIN操作用于将两个或多个表中的行组合起来,基于一个共同的列。
4. 写出SQL中更新表中数据的语句。
答案:UPDATE 表名 SET 列名1 = 值1, 列名2 = 值2 WHERE 条件;5. 如何在SQL中删除表中的数据?答案:DELETE FROM 表名 WHERE 条件;6. 请描述SQL中的GROUP BY子句的作用。
答案:GROUP BY子句用于将取回的记录分组,可以与聚合函数一起使用,如COUNT、SUM等。
7. SQL中如何使用子查询?答案:子查询是嵌套在另一个查询中的查询,可以出现在SELECT、INSERT、UPDATE或DELETE语句中。
8. 请写出SQL中创建索引的语句。
答案:CREATE INDEX 索引名 ON 表名 (列名);9. 如何在SQL中使用事务?答案:可以使用BEGIN TRANSACTION开始事务,然后执行一系列操作,最后使用COMMIT提交事务或ROLLBACK回滚事务。
10. 请解释SQL中的主键和外键。
答案:主键是表中用来唯一标识每行数据的列或列组合,而外键是一个表中的列或列组合,它在另一个表中作为主键。
11. SQL中如何进行数据排序?答案:使用ORDER BY子句,如SELECT * FROM 表名 ORDER BY 列名ASC 或 DESC。
12. 如何在SQL中使用聚合函数?答案:聚合函数如SUM、COUNT、AVG等,可以与GROUP BY子句一起使用,对数据进行汇总。
13. 请写出SQL中插入数据的语句。
答案:INSERT INTO 表名 (列1, 列2, ...) VALUES (值1, 值2, ...);14. 请解释SQL中的视图。
sql数据库试题及答案
sql数据库试题及答案# SQL数据库试题及答案一、选择题1. SQL代表什么?- A. Structured Query Language- B. Simple Query Language- C. Standard Query Language- D. System Query Language答案:A2. 在SQL中,用于查询数据的语句是:- A. INSERT- B. UPDATE- C. SELECT- D. DELETE答案:C3. 下列哪个不是SQL的数据类型?- A. INT- B. FLOAT- C. CHAR- D. TEXT答案:D二、填空题4. SQL中的主键(_______)是用来唯一标识表中每一行数据的字段。
答案:PRIMARY KEY5. 在SQL中,使用(_______)语句可以增加新的数据记录到表中。
答案:INSERT INTO6. SQL中的(_______)用于删除表中的记录。
答案:DELETE三、简答题7. 简述SQL中的事务是什么,并说明其四个基本特性。
答案:事务是SQL中用来保证数据一致性的操作序列。
事务具有以下四个基本特性:- 原子性(Atomicity):事务中的所有操作要么全部完成,要么全部不完成,不会结束在中间某个点。
- 一致性(Consistency):事务必须保证数据库从一个一致的状态转移到另一个一致的状态。
- 隔离性(Isolation):并发执行的事务之间不会互相影响。
- 持久性(Durability):一旦事务提交,它对数据库的改变就是永久性的,即使系统发生故障也不会丢失。
8. 解释什么是SQL的联接(JOIN)操作,并给出内联接(INNER JOIN)的例子。
答案:联接操作是SQL中用于结合两个或多个表中的行的一种操作。
内联接根据两个表中的共同字段来选择记录。
例如:```sqlSELECT Orders.OrderID, Customers.CustomerNameFROM OrdersINNER JOIN Customers ON Orders.CustomerID =Customers.CustomerID;```这个例子中,`Orders` 表和 `Customers` 表通过 `CustomerID` 字段进行内联接。
SQL期末复习简答题
SQL期末复习简答题第⼀章:数据库概述1.SQL Server的系统数据库有哪些?其作⽤是什么?答:6个系统数据库a)Master:记录了SQL Server系统的所有系统信息。
这些系统信息包括所有的登录信息、系统配置信息、SQL Server的初始化信息和其他系统数据库及⽤户数据库的相关信息。
b)Model:它是所有⽤户数据库和Tempdb数据库的模板数据库。
它包括Master数据库所有系统表的⼦集,这些系统数据库是每个⽤户定义数据库所需要的。
c)Msdb:代理数据库,为其警报、任务调度和记录操作员的操作提供存储空间。
d)Tempdb:是⼀个临时数据库。
它为所有的临时表、临时存储过程及其他临时操作提供存储空间。
e)Pubs和Northwind:是两个实例数据库。
2.SQL Server最重要的系统表有哪些?其作⽤是什么?答:a)Sysobjects:出现在每个数据库中,它对每个数据库对象含有⼀⾏记录。
b)Syscolumns:出现在Master数据库和每个⽤户⾃定义的数据库中,它对基表或者视图的每个列和存储过程中的每个参数都含有⼀⾏记录。
c)Sysindexes:出现在Master数据库和每个⽤户⾃定义的数据库中,它对每个索引和没有聚集索引的每个表都有含有⼀⾏记录,它还对包括⽂本或图像数据的每个表都有⼀⾏记录。
d)Sysusers:出现在Master数据库和每个⽤户⾃定义的数据库中,它对整个数据库中的每个Windows NT⽤户、Windows NT⽤户组、SQL Server⽤户或者SQL Server⾓⾊都含有⼀⾏记录。
e)Sysdatabases:对SQL Server系统上的每个系统数据库和⽤户⾃定义的数据库都含有⼀⾏记录,它只出现在master数据库中。
f)Sysdepends:对表、视图和存储过程之间的每个依赖关系含有⼀⾏记录,它出现在master数据库和每个⽤户⾃定义的数据库中。
sql数据库试复习题二及答案
一.填空题1.根据模型应用目的的不同,数据模型可以分为两类:一类是 _________ ,是按用户的观点来对数据和信息进行抽象;另一类是 _________ ,是按计算机的观点建模。
2.结构数据模型直接描述数据库中数据的逻辑结构,常用的结构数据模型有_________ , _________ , _________ , _________ ,其中 SQL 数据库是基于 _________ 建立的。
3.从操作系统的角度来看, SQL 具有 _________ 的特点,减少了多用户访问的时间。
____________ 是一种无须扫描整张表就能实现对数据的快速访问的途径。
SQL server 使用____________ 记载用户对数据库进行的所有操作。
在给数据库改名之前,必须设置数据库处于 ____________ 状态。
sp_help 系统存储过程的功能是 ___________________ 。
4.数据完整性实质,存储在数据库中的数据正确无误并且相关数据具有一致性,根据完整性机制所作用的数据库对象和范围不同,可以分为: _________ , _________ ,_________ , _________ 四种,其中标志列可以实现 _________ 数据完整性。
5.SQL 语言中行注释的符号为 _________ ;块注释的符号为 _________ 。
____________ 是将用户组成一个集体授权的单一单元。
6.为了实现安全性,每个网络用户在访问 SQL server 数据库之前,都必须经过两个阶段的检验: _________ 和 _________ 。
7._________ 是 SQL 程序中最小的工作单元,要么成功完成所有操作;要么就是失败, 并将所作的一切还原。
8.SQL server 中的变量分为两种 ,全局变量和局部变量。
其中全局变量的名称以 _________ 字符开始,有系统定义和维护。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、什么是数据库?数据库是长期存储在计算机内、有组织的、可共享的数据集合。
数据库是按某种数据模型进行组织的,存放在外存储器上,且可被多个用户同时使用。
因此,数据库具有较小的冗余度、较高的数据独立性和易扩展性。
2、数据库管理系统有哪些功能?数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它的主要功能包括以下几个方面;数据库定义功能DBMS提供相应数据定义语言来定义数据库结构,他们是刻画数据库的框架,并被保存在数据字典中。
数据字典是DBMS存取和管理数据的基本依据。
数据存取功能DBMS提供数据操纵语言实现对数据库数据的基本存取操作:检索、插入、修改和删除。
数据库运行管理功能DBMS提供数据控制功能,即数据的安全性、完整性和并发控制等对数据库运行进行有效的控制和管理,以确保数据库数据正确有效和数据库系统的有效运行。
数据库的建立和维护功能包括数据库初始数据的装入,书局哭得转储、恢复、重组织,系统性能监视、分析等功能。
这些功能大都由DBMS的实用程序来完成。
数据通信功能DBMS提供处理数据的传输,实现用户程序与DBMS之间的通信。
通常与操作系统协调完成。
3、在安装SQL Server 2000时,“仅客户端工具”、“服务器和客户端工具”及“仅连接”等3种安装定义有什么差别?仅客户端工具仅安装客户端关系数据库管理工具。
此选项含管理SQL Server的客户端工具和客户端连接组件。
服务器和客户端工具该选项执行安装股务器和客户端工具以创建具有管理能力的关系数据库服务器。
选择“服务器和客户端工具”选项将显示所有附加的安装选项。
仅连接仅安装关系数据库客户端连接组件,包括SQL Server2000命名实例所需的MDAC2.6(Micorsoft数据访问组件)。
该选项只提供连接工具,不提供客户端工具或其他组件。
4、一个数据库中包含哪几种文件?数据库具有惟一的主数据文件和一个或多个事务日志文件,数据库文件可能还有次数据文件。
这些文件均有操作系统文件名和SQL语句使用的逻辑文件名。
主数据文件是所有数据文件的起点,包含指向其他数据库文件的指针,它的扩展名为.MDF。
次数据文件是辅助主数据文件存储数据的,它的扩展名为.NDF。
事务日志文件保存了恢复数据库的所有日志信息,它的扩展名为.LDF。
虽然SQL Server2000并不强制使用.MDF、.NDF和.LDF作为数据库文件的扩展名,担仍建议使用这些扩展名以帮助表示文件的用途。
5、事务日志文件和数据文件分开存放有什么好处?(1)事务日志可以单独的备份。
(2)有可能从服务器失效的事件中将服务器恢复到最近的状态。
(3)事务日志不会被强占数据库的空间。
(4)可以很容易的检测事务日志的空间(5)在向数据文件和事务日志写入数据时会产生较少的冲突,这有利于提高SQL Server的性能。
6、系统数据库包含哪些,分别有什么作用?在安装SQL Server 2000时,将创建四个系统数据库:master、model、msdb和tempdb。
(1)master包含了SQL Server的所有系统信息。
诸如登录账号、初始化信息、系统配置、数据库位置及数据库错误信息等,用于控制用户数据库和SQL Server的运行。
(2)model数据库为新创建的数据库和tempdb数据库提供模板。
(3)msdb是代理服务数据库,为SQL Server Agent调度信息、报警和作业记录提供存储空间。
(4)tempdb为临时表和临时存储过程提供存储空间,所有与系统连接的用户的临时表和临时存储过程都存储于该数据库中。
7、简述列属性的含义。
表中的每个列都有一套属性。
每个属性都定义列的一个特性,如列的名称、数据类型或长度。
一个列的整组属性构成该列在数据库中表中的定义。
可以在数据库关系图的的数据库表中直接设置列属性。
在可将表保存到数据库之前,有3个列属性是必须的:列名、数据类型和长度。
可以通过编辑列的任何属性重新定义列。
例如可以重名一个列,改变列的长度,为列指定默认值等等。
8、表关系有哪几种类型?关系是通过匹配健列中的数据而工作的,而键列通常是两个表中具有相同名称的列。
在大多数情况下,关系将一个表中为每个行提供惟一标识符的主键与另一个表中外键内的项相匹配。
例如。
通过在student标的sno列(主键)和score标的sno列(外键)之间创建一个关系,可以使学生与成绩相关联。
表与表之间存在如下3种类型的关系,所创建的关系类型取决于相关联的列是如何定义的:一对多关系这是最常见的表关系类型。
在这种关系类型中,表A中的行可以在表B中有许多匹配行,但是表B中的行只能在表A中有一个匹配行。
多对多关系在这种表关系中,表A中的一行可与表B中的多行相匹配,反之亦然。
通过定义称为连接标的第三方表创建这样的关系,该连接表的主键包括表A和表B中的外键。
一对一关系在这种关系中,表A中的一行最多只能与表B中的一行相匹配,反之亦然。
如果两个相关列都是主键或具有惟一约束,则创建的是一对一关系。
9、SQL语句分为哪4类?SQL语句通常分为4类:数据查询语言(Data Query Language)、数据操纵语言(Data Manipulation Language)、数据定义语言(Data Define Language)和数据控制语言(Data Control Language)。
10、使用identity列时应注意什么?Identity属性使得某一列的取值是基于上一行的列值和为该列定义的步长自动生成的。
Identity列的值可以惟一的标识表中的一行。
定义一个identity列,必须给出一个种子值(初始值),一个步长值(增量)。
在一个identity 列定义后,每当向表中插入一行数据时,identity列就会自动产生下一个值。
在插入数据行的语句中,不应包含identity列的值,该列的值应由系统自动给出。
定义identity列时,应注意如下几点:(1)每个表只允许有一个identity列。
(2)identity列不能被更新。
(3)identity列不允许有NULL值。
(4)identity列只能用于具有下列数据类型之一的列:int、smallint、tinyint、numeric(小数部分为0)、decimal(小数部分为0)。
(5)通过函数ident_seed(table_name)可获得seed值,通过ident_incr(table_name)可获得步长值,使用全局变量@@identity可以返回表识列的数据。
11、使用T ransact-SQL 语句向表中插入数据应注意什么问题?(1)当向表中所有列都插入新数据时,可以省略列表名,但是必须保证V ALUES后的个数据项位置同表定义时的顺序一致。
(2)要保证表定义式的非空列必须有值,即使这个非空列没有出现在插入语句中,也必须如此。
(3)插入字符型和日期型值时,要加入单引号。
(4)没有列出的数据类型应该具有以下属性之一:identity属性、timestamp数据类型、具有NULL属性或者有一个默认值。
对于具有identity属性的列,其值由系统给出,用户不必往表中插入数据。
12、LIKE匹配字符有哪几种?如果要检索的字符中包含匹配字符,那么该如何处理?在SQL Server 2000中,共提供了4个通配符:% 代表任意多个字符。
_(下划线)代表一个任意字符。
[] 代表括号内的任意一个字符。
[^] 表示任意一个在方括号内没有的字符。
13、要使查询的结果有序显示,应该用什么语句?要使查询的结果有序显示,应使用ORDER BY字句来修改查询结果的显示顺序。
14、什么是局部变量?什么是全局变量?如何表示它们?局部变量是在一个批处理中被声明、定义、赋值和引用的变量,批处理结束后,该变量也就消失了。
全局变量是用来记录SQL Server服务器活动状态的变量,它预先被定义,用户只可以使用,不可以重新定义和赋值。
局部变量是用户定义的变量,用DECLARE语句声明,在声明时它被初始化为NULL,用户可以用SET语句为其赋值,局部变量的使用范围是定义它的批、存储过程和触发器。
它必须以@开始,遵循SQL Server的标识符和对象的命名规范,而且名字不能使用保留字。
全局变量是SQL Server 系统所提供并赋值的变量。
用户不能建立全局变量,也不能使用SET 语句去修改全局变量的值。
全局变量的名字以@@开头。
大多数全局变量的值是报告本次SQL Server启动后发生的系统活动。
15、在默认情况下,SQL脚本文件的后缀是什么?SQL脚本执行的结果有哪几种形式?SQL脚本文件的默认后缀是.sql,SQL脚本执行的结果有3种形式:文本显示形式、表格显示形式及文件保存形式。
16、数据检索时使用COMPUTE和COMPUTE BY产生的结果有何不同?使用COMPUTE子句和COMPUTE BY子句都是既能浏览明细数据又能看到统计的结果。
只使用COMPUT子句时,其查询的结果类似于总计,而使用COMPUTE BY子句时,其查询的结果将为带具体内容的分类进行统计。
17、进行连接查询时应注意什么?连接查询是指以指定表中的某个列或某些列作为连接条件,从两个或更多的表中查询关联数据的查询。
进行廉价查询时应注意以下几点:一般而言,基于主键和外键指定查询条件,连接条件可使用“主键=外键”。
如果一个表有复合关键字,在连接表时,必须引用整个关键字。
应尽可能限制连接语句中表的数目,连接的表越多,查询处理的时间越长。
对于连接表的两个列应有相同或类似的数据类型。
不要使用空值作为连接条件,因为空值计算不会和其他任何值相等。
18、简述游标的概念及类型。
关系数据库中的操作会对整个行集产生影响。
由SELECT语句返回的行集包括所有满足该语句WHERE子句中条件的行。
由语句所返回的这一完整的行集被称为结果集。
应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效的处理。
这些应用程序需要一种机制以便每次处理一行或若干行。
游标就是提供这种机制的结果集扩展。
游标通过以下方式扩展结果处理:允许定位在结果集的特定行。
从结果集的当前位置检索一行或多行。
支持对结果集中当前位置的行进行数据修改。
为有其他用户对显示在结果集中的数据库数据所作的更改提供不同级别的可见性支持。
提供脚本、存储过程和触发器中使用的访问结果集中的数据的Transact-SQL语句。
游标的类型:静态游标、动态游标、只进游标、键集驱动游标。
19、什么是索引?索引分为哪两种?各有什么特点?索引是为了加速对表中数据行的检索而创建的一种分散的存储结构。
根据索引的顺序与数据表的物理顺序是否相同,可以把索引分为两种类型:聚簇索引数据表中的物理顺序和索引表的顺序相同,它根据表中的一列或多列值的组合排列记录。