康索特软件有限公司 SQL Server 2005数据库技能培训
SQL Server 2005数据库技能培训
部门: 软件合作中心 撰写: 胡余 审核: 批准: 文档状态:正式版 日期:2011年12月01日
地址:武汉洪山区武大科技园兴业楼南楼二单元402室 电话:027-87970489
康索特软件有限公司 SQL Server 2005数据库技能培训
目 录
一 目的 ............................................................................................................................................ 7 二 数据库 ........................................................................................................................................ 7
2.1 数据库基本概念(了解) ............................................................................................. 7
2.1.1 基本介绍 ................................................................................................................. 7 2.1.2 数据库对象分类 ..................................................................................................... 7 2.1.3 数据库构成 ............................................................................................................. 7 2.1.4 数据库使用工具 ..................................................................................................... 7 2.2 数据库基本操作(掌握) ............................................................................................. 8
2.2.1 数据库的创建 ......................................................................................................... 8 2.2.2 数据库的删除 ......................................................................................................... 8 2.2.3 数据库设置简单模式 ............................................................................................. 8 2.2.4 数据库收缩命令 ..................................................................................................... 8 2.2.5 数据库备份还原 ..................................................................................................... 9 2.2.6 数据库脚本生成操作 ............................................................................................. 9 2.2.7 添加链接服务器 ..................................................................................................... 9 2.2.8 添加作业 ................................................................................................................. 9 2.2.9 添加用户名 ............................................................................................................. 9 2.3 数据库设计范式(了解) ........................................................................................... 10
2.3.1 基本介绍 ............................................................................................................... 10 2.3.2 实例 ....................................................................................................................... 10 2.3.3 小结 ....................................................................................................................... 10
三 表 .............................................................................................................................................. 11
3.1 基本介绍(了解) ....................................................................................................... 11 3.2 表字段类型(掌握) ................................................................................................... 11 3.3 表创建(掌握) ........................................................................................................... 11
3.3.1 建表语句 ............................................................................................................... 11 3.3.2 自增ID ................................................................................................................. 12 3.3.3 自增列 ................................................................................................................... 12 3.4 DML语言(掌握) ....................................................................................................... 12
3.4.1 插入数据 ............................................................................................................... 12 3.4.2 查询数据 ............................................................................................................... 12 3.4.3 删除数据 ............................................................................................................... 12 3.4.4 更新数据 ............................................................................................................... 12 3.5 DDL语言(掌握) ....................................................................................................... 13
3.5.1 增加字段 ............................................................................................................... 13 3.5.2 删除字段 ............................................................................................................... 13 3.5.3 修改字段 ............................................................................................................... 13 3.5.4 删除表 ................................................................................................................... 13 3.5.5 修改表名 ............................................................................................................... 13 3.5.6 判断字段 ............................................................................................................... 13 3.6 表约束(掌握) ........................................................................................................... 14
3.6.1 基本介绍 ............................................................................................................... 14
地址:武汉洪山区武大科技园兴业楼南楼二单元402室
电话:027-87970489
康索特软件有限公司 SQL Server 2005数据库技能培训
3.6.2 主键(primary key)约束 ......................................................................................... 14 3.6.3 外键(foreign key)约束 .......................................................................................... 14 3.6.4 非空(not null)约束 ................................................................................................ 14 3.6.5 唯一(unique)约束 ................................................................................................. 15 3.6.6 检查(check) 约束 ................................................................................................. 15 3.6.7 默认(default)约束 ................................................................................................. 15 3.6.8 违反约束 ............................................................................................................... 16 3.7 表关联(掌握) ........................................................................................................... 16
3.7.1 多表关联分类 ....................................................................................................... 16 3.7.2 注意的地方 ........................................................................................................... 16 3.8 表索引(重点掌握) ................................................................................................... 16
3.8.1 基本介绍 ............................................................................................................... 16 3.8.2 基本操作 ............................................................................................................... 16 3.8.3 使用索引应注意的问题(会答对几条即可) ................................................... 17 3.9 表变量(暂不掌握).................................................................................................... 18 3.10 临时表(了解) ......................................................................................................... 19
3.10.1 基本介绍 ............................................................................................................. 19 3.10.2 使用临时表应注意的问题 ................................................................................. 19 3.11 分区表(暂不掌握) ................................................................................................. 19
3.11.1 基本介绍 ............................................................................................................. 19 3.11.2 分区表创建 ......................................................................................................... 20
四 视图(了解) .......................................................................................................................... 20
4.1 基本介绍 ....................................................................................................................... 20 4.2 基本操作 ....................................................................................................................... 20
4.2.1 创建视图 ............................................................................................................... 20 4.2.2 修改视图 ............................................................................................................... 20 4.2.3 删除视图 ............................................................................................................... 21
五 存储过程(了解) .................................................................................................................. 21
5.1 结构 ............................................................................................................................... 21
5.1.1 统计存储过程 ....................................................................................................... 21 5.1.2 查询存储过程 ....................................................................................................... 21 5.2 注意的地方 ................................................................................................................... 22
5.2.1 变量申明和赋值 ................................................................................................... 22 5.2.2 控制语句 ............................................................................................................... 22 5.2.3 内部函数 ............................................................................................................... 23 5.2.4 链接查询 ............................................................................................................... 23 5.2.5 临时表 ................................................................................................................... 23 5.2.6 动态SQL .............................................................................................................. 23 5.2.7 外赋值语句 ........................................................................................................... 23 5.2.8 核心查询语句 ....................................................................................................... 24 5.2.9 异常捕获机制 ....................................................................................................... 24 5.2.10 事务处理机制 ..................................................................................................... 24 5.2.11 日志记录机制 ..................................................................................................... 24 5.3 内部存储过程 ............................................................................................................... 25
地址:武汉洪山区武大科技园兴业楼南楼二单元402室 电话:027-87970489
康索特软件有限公司 SQL Server 2005数据库技能培训
5.3.1 sp_executesql ......................................................................................................... 25 5.3.2 sp_rename .............................................................................................................. 25 5.3.3 sp_configure ........................................................................................................... 25 5.4 存储过程的好处 ........................................................................................................... 25
5.4.1 重复使用 ............................................................................................................... 25 5.4.2 提高性能 ............................................................................................................... 25 5.4.3 减少网络流量 ....................................................................................................... 25 5.4.4 安全性 ................................................................................................................... 25
六 函数(掌握) .......................................................................................................................... 26
6.1 内部函数 ....................................................................................................................... 26
6.1.1 常用5个内部函数 ............................................................................................... 26 6.1.2 SUBSTRING ......................................................................................................... 26 6.1.3 CONVERT ............................................................................................................. 26 6.1.4 CAST ..................................................................................................................... 26 6.1.5 LEFT ...................................................................................................................... 26 6.1.6 RIGHT ................................................................................................................... 27 6.1.7 DATEADD ............................................................................................................. 27 6.1.8 DATEPART ............................................................................................................ 27 6.1.9 CHARINDEX ........................................................................................................ 27 6.1.10 LTRIM .................................................................................................................. 28 6.1.11 RTRIM ................................................................................................................. 28 6.1.12 REPLACE ............................................................................................................ 28 6.1.13 STUFF .................................................................................................................. 28 6.2 自定义函数(了解) ................................................................................................... 28
6.2.1 语法 ....................................................................................................................... 28 6.2.2 注意的地方 ........................................................................................................... 29
七 其他(了解) .......................................................................................................................... 29
7.1 游标 ............................................................................................................................... 29
7.1.1 游标使用步骤 ....................................................................................................... 29 7.1.2 游标基本语法 ....................................................................................................... 29 7.1.3 游标优缺点 ........................................................................................................... 30 7.2 BCP工具 ....................................................................................................................... 30
7.2.1 BCP导入 ............................................................................................................... 30 7.2.2 BCP导出 ............................................................................................................... 30 7.2.3 BCP作用 ............................................................................................................... 30 7.3 触发器 ........................................................................................................................... 30
7.3.1 触发器介绍 ........................................................................................................... 30 7.3.2 触发器优缺点 ....................................................................................................... 30
八 面试注意事项 ........................................................................................................................... 31
8.1 面试题 ........................................................................................................................... 31
8.1.1 SQL Server数据库的物理结构包含哪几部分? ................................................ 31 8.1.2 谈谈你对SQL Server链接服务器的理解? ...................................................... 31 8.1.3 谈谈你对SQL Server作业的理解? .................................................................. 31 8.1.4 SQL Server中哪个用户的权限最大? ................................................................ 31
地址:武汉洪山区武大科技园兴业楼南楼二单元402室 电话:027-87970489
康索特软件有限公司 SQL Server 2005数据库技能培训
8.1.5 列举常用的DML和DDL语言? ...................................................................... 31 8.1.6 SQL Server中表自增ID和自增列的区别和各自的用法? .............................. 31 8.1.7 SQL Server中如何判断表中某字段是否存在? ................................................ 31 8.1.8 SQL Server中索引分哪几种?请加以详细介绍。 ............................................ 32 8.1.9 谈谈使用索引的代价。 ....................................................................................... 32 8.1.10 主键索引和唯一索引的区别? ......................................................................... 32 8.1.11 SQL Server中一张表能创建几个聚集索引? .................................................. 32 8.1.12 where 子句中索引字段a后可否用<>或!=操作符?请说明原因。 ............... 32 8.1.13 where 子句中索引字段a和b为索引字段,能否用or来连接这两字段?请说明原因。 ......................................................................................................................... 32 8.1.14 索引字段中可否跟IN或not in?请说明原因。 ............................................. 32 8.1.15 where 子句中可否对索引字段进行表达式操作?请说明原因。 .................. 32 8.1.16 where 子句中可否对索引字段进行like操作。 .............................................. 32 8.1.17 常用的多表关联有哪些? ................................................................................. 33 8.1.18 左关联出来的数据哪张表中数据全部展示? ................................................. 33 8.1.19 怎么关联能提高关联性能? ............................................................................. 33 8.1.20 SQL Server临时表分哪几类?谈谈他们之间的区别? .................................. 33 8.1.21 SQL Server中临时表怎么使用? ...................................................................... 33 8.1.22 SQL Server中如何修改视图? .......................................................................... 33 8.1.23 视图中可否创建索引? ..................................................................................... 33 8.1.24 介绍下SQL Server中存储过程的写法?对其结构加以说明。 .................... 33 8.1.25 SQL Server中如何申明变量?怎么对变量赋值? .......................................... 33 8.1.26 返回参数和OUTPUT参数之间的区别是什么? ........................................... 34 8.1.27 SQL Server中exists关键字怎么使用?说说他的最佳使用场所? ............... 34 8.1.28 SQL Server中链接查询怎么使用?数据源于哪? .......................................... 34 8.1.29 SQL Server中动态SQL怎么使用?................................................................. 34 8.1.30 SQL Server中怎么给动态SQL中的变量赋值? ............................................. 34 8.1.31 SQL Server中异常捕捉机制怎么使用? .......................................................... 35 8.1.32 SQL Server中事务处理机制在什么场所下使用?怎么使用? ...................... 35 8.1.33 查询中若出现错误,怎么查找错误原因? ..................................................... 35 8.1.34 列举几个常用的内部扩展存储过程? ............................................................. 35 8.1.35 列举几个常用的内部函数? ............................................................................. 35 8.1.36 SQL Server中用户自定义函数怎么创建和使用? .......................................... 35 8.1.37 SQL Server的自定义函数中可否执行存储过程? .......................................... 36 8.1.38 简单介绍下游标的使用步骤。 ......................................................................... 36 8.1.39 SQL Server中BCP导出怎么使用? ................................................................ 36 8.1.40 SQL Server中BCP导出的用途? .................................................................... 36 8.1.41 SQL Server内部变量@@error后能否跟打印语句?请说明原因。 .............. 36 8.1.42 Sum(null)等于多少?count(null)等于多少? .................................................... 36 8.1.43 Union和union all的区别?哪个性能较好? ................................................... 36 8.1.44 Distinct和group by能否同时使用?请说明原因。 ........................................ 36 8.1.45 And与or哪个优先级高? ................................................................................. 36 8.1.46 谈谈SQL Server中SET ANSI_NULLS on后对空数据的影响? ................. 36 8.1.47 谈谈SQL Server中为什么要用到SET ANSI_NULLS on? .......................... 37
地址:武汉洪山区武大科技园兴业楼南楼二单元402室 电话:027-87970489