软件工程师SQLServer培训

上传人:wuyo****995 文档编号:168042226 上传时间:2022-11-07 格式:DOC 页数:21 大小:38KB
收藏 版权申诉 举报 下载
软件工程师SQLServer培训_第1页
第1页 / 共21页
软件工程师SQLServer培训_第2页
第2页 / 共21页
软件工程师SQLServer培训_第3页
第3页 / 共21页
资源描述:

《软件工程师SQLServer培训》由会员分享,可在线阅读,更多相关《软件工程师SQLServer培训(21页珍藏版)》请在装配图网上搜索。

1、第一章 SQL Server数据库基础1ACCP V4.0课程地位SPR: Computer Base STB SQL Server Base OOP&Java Base HTML&JavaScript CSQL Server.Net & C# WinFormsJSP/ServletTesting&SQAOracleXML ASP.NET & WebServiceEJB&WebService Struts&JSFLinux SPM UML2ACCP V4.0课程目标理解数据的基本概念 熟识SQL Server的基本操作 创建数据库、表、检查约束 编写T-SQL执行数据查询 为Java、.NET

2、数据库开发提供基础3ACCP V4.0本章目标理解数据的基本概念 熟识SQL Server企业管理器的基本操作 创建和配置SQL Server数据库4ACCP V4.0数据库和应用程序 2-1响应和提供数据 操作和查询数据库应用程序 数据库服务器5ACCP V4.0数据库和应用程序 2-2应用程序作用:响应操作并显示结果、 作用:响应操作并显示结果、向数据库请求数据 要求:美观、 要求:美观、操作简单方便数据库作用:存储数据、检索数据、生成新的数据 作用:存储数据、检索数据、 要求:统一、安全、 要求:统一、安全、性能等6ACCP V4.0为何需要数据库存储数据的方法第一种方法:用大脑来记住数

3、据 第二种方法:写在纸上 第三种方法:写在计算机的内存中 第四种方法:写成磁盘文件7ACCP V4.0数据库能够做什么存储大量数据,方便检索和访问 保持数据信息的一致、完整 共享和安全 通过组合分析,产生新的有用信息8ACCP V4.0数据库的发展史萌芽阶段文件系统使用磁盘文件来存储数据初级阶段第一代数据库出现了网状模型、层次模型的数据库中级阶段第二代数据库关系型数据库和结构化查询语言高级阶段新一代数据库“关系-对象”型数据库9ACCP V4.0时下流行的数据库OracleOracle公司的产品 “关系-对象”型数据库 产品免费、服务收费SQL Server针对不同用户群体的五个特殊的版本 易

4、用性好DB2IBM公司的产品 支持多操作系统、多种类型的硬件和设备10ACCP V4.0数据库的基本概念 6-1这些客观存在的、可以被描述事物都是“实体” 这些客观存在的、可以被描述事物都是“实体”11ACCP V4.0数据库的基本概念 6-2行(记录)列12ACCP V4.0数据库的基本概念 6-3数据库就是“数据”的“仓库” 数据库由表、关系以及操作对象组成 数据存放在表中订单 客户 产品数 据 表 存储过程 视 图 . 产品数据库表13ACCP V4.0数据库的基本概念 6-4数据库A003 A004 杨可 马兰 B007 B008 李新爱 刘开泰检索数据插入数据 检索数据 插入数据更新

5、数据删除数据数据库管理系统 数据库管理系统DBMS14ACCP V4.0数据库的基本概念 6-5编号 1 2 姓名 王涛 李梅 年龄 33 27 民族 汉族 汉族 部 门 人事管理部 人事管理部存在冗余编号 1 2 民族编码 1 2 姓名 王涛 李梅 民族 汉族 回族 年龄 33 27 民族编码 1 1 部门编码 1 2 部门编码 1 1 部门 人事管理部 市场营销部为减少数据查找的麻烦, 为减少数据查找的麻烦,允许数据有一定的冗余15ACCP V4.0数据库的基本概念 6-6Roll NumberNameAlicia Ruth Jason Darren Mary Beth Alicia Ru

6、th Alicia Ruth Mary BethAddress12, Temple Street 123, Sunset Blvd. 32, Golden Avenue 12, Temple Street 12, Tmple Street 33, Golden AvenueBookTakenAC091 AC043 AC021 AC043 AC011 AC01112 14姓名15 12 12 15不同的地址! 不同的地址!存在不正确、不准确的数据,数据库“失去了完整性” 存在不正确、不准确的数据,数据库“失去了完整性”16ACCP V4.0SQL Server安装需求最小配置处理器 166-MH

7、z 奔腾处理器或者更高 内存 最小 256 MB (Windows 2000安装) 最小 64 MB (Windows NT 4.0安装) 250 MB (典型安装) 270 MB (完全安装) 100 MB (客户端工具) 50 -130 MB (分析服务) 80 MB (英文查询)磁盘容量MB17ACCP V4.0SQL Server 2000组件18ACCP V4.0服务管理器演示启动和停止服务19ACCP V4.0使用企业管理器 4-1组 注册 数据库 数据库对象 数据库表 记录20ACCP V4.0使用企业管理器 4-2演示创建组21ACCP V4.0使用企业管理器 4-3演示建立注

8、册22ACCP V4.0使用企业管理器 4-4演示建立登录和数据库用户23ACCP V4.0SQL Server中的数据库系统数据库master model tempdb msdbpubsNorthwindUser1User2用户数据库24ACCP V4.0创建数据库 3-1数据库文件和事务日志文件数据库 数据文件 .mdf或.ndf 日志文件 .ldf表、索引 页:8 KB 数据 最多= 8060字节25ACCP V4.0创建数据库 3-2Northwind的物理文件结构sys sys sys sys sysusers sysobjects Orders Customers Products

9、 OrdHistYear2 OrdHistYear1C:Northwnd.mdfD:OrdHist1.ndf OrdHist2.ndfE:Northwnd.ldf主文件组26用户定义文件组日志文件ACCP V4.0创建数据库 3-3演示创建数据库27ACCP V4.0管理和维护:收缩数据库演示收缩数据库28ACCP V4.0管理和维护:移动数据库演示分离和附加数据库29ACCP V4.0管理和维护:配置选项演示配置数据库的选项30ACCP V4.0删除数据库31ACCP V4.0总结SQL Server 2000是Microsoft公司提供的关系型数据库管 理系统,SQL Server也是当今

10、流行的数据库 数据库是表和数据库访问对象的集合,其中表分类存储了 不同的实体信息,每一行数据对应一个实体的描述信息 数据冗余是指数据库中存在一些重复的数据,数据完整性 是指数据库中的数据能够正确反应实际情况,数据库中允 许有一些数据冗余,但是要保持 数据的完整性 企业管理器是SQL Server 2000最常用的操作环境之一, 能够执行对数据库的日常管理操作 SQL Server数据库的物理文件包括数据文件和日志文件两 部分,并且在创建数据库的时候就需要指定 数据库的操作包括创建、收缩、移动、配置选项和删除32ACCP V4.0 第四章 数据查询(1)1ACCP V4.0回顾SQL分为数据操作

11、语言、数据控制语言和数据定义语言; T-SQL是SQL的扩展 通配符经常与LIKE一起使用来进行非精确的限制; 一次插入多行数据,可以使用INSERTSELECT、 SELECTINTO或者UNION关键字来实现 标识列不能插入指定的数据值 使用UPDATE更新数据,一般都有限制条件 使用DELETE删除数据时,不能删除被外键值所引用的数 据行 使用TRUNCATE TABLE来删除所有数据时,效率要比 DELETE语句高 上面的数据操作语句在程序中会经常使用到2ACCP V4.0目标理解查询的机制 使用SELECT语句进行条件查询 在查询中返回限制行、进行查询排序 在查询中使用表达式、运算符

12、和函数3ACCP V4.0什么是查询?SELECT * FROM SALES查询请求 查询结果集 Application Logic SQL SERVER客户程序A B C D E F G查询产生一个虚拟表,看到的是表形式显示的结果,但结 果并不真正存储,每次执行查询只是现从数据表中提取数 据,并按照表的形式显示出来4ACCP V4.0怎么查的?学员编号 001 002 003 004 005 006 007 008 009 010 011 002 0085学员姓名 张明全 李菲 于寄谦 刘国正 周接轮 巩小妹 巩大妹 张明敏 矛十八 罗林光 司马坡 李菲 张明敏 罗林光地址 湖南长沙 湖北宜

13、昌 甘肃天水 山东荷泽 台湾新竹 香港龙湾 香港龙湾 北京顺义 四川棉阳 陕西临潼 新疆喀什 湖北宜昌 北京顺义 陕西临潼所在班级 S201 S202 S204 S201 S204 S203 S203 S202 S204 S202 S201 S202 S202 S202 .SELECT * FROM StudentsH .WHERE 所在班级 = S202010ACCP V4.0思考既然查询得到的“结果集”的结构类似于一张表,那么可 以在“结果集”上继续进行查询吗?6ACCP V4.0编写查询语句之前7ACCP V4.0查询SELECT FROM WHERE ORDER BY列名称SELECT

14、 SCode, SName, SAddress ASC或DESC 或表名FROM Students过滤条件WHERE SSEX = 0排序条件ORDER BY SCodeSELECT FROM WHERE ORDER BY8SCode,SName,SAddress Students SSEX = 0 SCodeACCP V4.0数据查询-基础查询全部的行和列 SELECT * FROM Students 查询部分行 SELECT SCode,SName,SAddress FROM Students WHERE SAddress = 河南新乡 SELECT SCode,SName,SAddres

15、s FROM Students WHERE SAddress 河南新乡9ACCP V4.0数据查询-列名使用AS来命名列 SELECT SCode AS 学员编号,SName AS学员姓名,SAddress AS 学员地址 FROM Students WHERE SAddress 河南新乡 SELECT FirstName+.+LastName AS 姓名 FROM Employees 使用=来命名列 SELECT 姓名 = FirstName+.+LastName FROM Employees10ACCP V4.0数据查询-空行常量列查询空行 SELECT SName FROM Studen

16、ts WHERE SEmail IS NULL思考:非空行怎么查?使用常量列 SELECT 姓名=SName,地址= SAddress,河北新 龙 AS 学校 名称 FROM Students11ACCP V4.0数据查询-限制行数限制固定行数 SELECT TOP 5 SName, SAddress FROM Students WHERE SSex = 0返回百分之多少行 SELECT TOP 20 PERCENT SName, SAddress FROM Students WHERE SSex = 012ACCP V4.0数据查询-排序 2-1升序排列 SELECT StudentID A

17、s 学员编号,(Score*0.9+5) As 综合成绩 FROM Score WHERE (Score*0.9+5)60 ORDER BY Score 降序排列 SELECT Au_Lname +. +Au_fName AS EMP From Authors Union SELECT fName +.+ LName AS EMP From Employee ORDER BY EMP DESC13ACCP V4.0数据查询-排序 2-2按多列排序 SELECT StudentID As 学员编号, Score As 成绩 FROM Score WHERE Score60 ORDER BY Sc

18、ore,CourseID思考:排序中的字段,可以使用表达式吗? 如果不可以,请说明原因; 如果可以,请举例说明;14ACCP V4.0SQL Server中的函数字符串函数 日期函数 数学函数 系统函数相当于C语言中的内部函数15ACCP V4.0字符串函数函数名CHARINDEX描述用来寻找一个指定的字符串在另一个字符 串中的起始位置 返回传递给它的字符串长度 把传递给它的字符串转换为小写 把传递给它的字符串转换为大写 清除字符左边的空格 清除字符右边的空格 从字符串右边返回指定数目的字符 替换一个字符串中的字符举例SELECT CHARINDEX(ACCP,My Accp Course,1

19、 ) 返回:4 SELECT LEN(SQL Server课程) 返回:12 SELECT LOWER(SQL Server课程) 返回:sql server课程 SELECT UPPER(sql server课程) server ) 返回:SQL SERVER课程 SELECT LTRIM ( 周智宇 ) 返回:周智宇 (后面的空格保留) SELECT RTRIM ( 周智宇 ) 返回: 周智宇(前面的空格保留) SELECT RIGHT(买卖提.吐尔松,3) 返回:吐尔松 SELECT REPLACE(莫乐可切.杨可,可,兰) 返回:莫乐兰切.杨兰 SELECT STUFF(ABCDEFG

20、, 2, 3, 我的音乐我的世界) 返回:A我的音乐我的世界EFGLEN LOWER UPPER LTRIM RTRIM RIGHT REPLACESTUFF在一个字符串中,删除指定长度的字符, 并在该位置插入一个新的字符串16ACCP V4.0日期函数函数名 GETDATE DATEADD DATEDIFF 描述 取得当前的系统日期 将指定的数值添加到指定的日 期部分后的日期 两个日期之间的指定日期部分 的区别 举例 SELECT GETDATE() 返回:今天的日期 SELECT DATEADD(mm,4,01/01/99) 返回:以当前的日期格式返回05/01/99 SELECT DAT

21、EDIFF(mm,01/01/99,05/01/99) 返回:4 SELECT DATENAME(dw,01/01/2000) 返回:Saturday SELECT DATEPART(day, 01/15/2000) 返回:15DATENAME日期中指定日期部分的字符串 形式 日期中指定日期部分的整数形 式DATEPART17ACCP V4.0数学函数函数名 描述 取数值表达式的绝对值 返回大于或等于所给数字表达 式的最小整数 举例 SELECT ABS(-43) 返回:43 SELECT CEILING(43.5) 返回:44ABSCEILINGFLOOR POWER RO UND Sign

22、 Sqrt取小于或等于指定表达式的 SELECT FLOOR(43.5) 最大整数 返回:43取数值表达式的幂值 将数值表达式四舍五入为指定 精度 对于正数返回+1,对于负数返 回-1,对于0 则返回0 取浮点表达式的平方根 SELECT POWER(5,2) 返回:25 SELECT ROUND(43.543,1) 返回:43.5 SELECT SIGN(-43) 返回:-1 SELECT SQRT(9) 返回:318ACCP V4.0系统函数函数名 CONVERT 描述 用来转变数据类型 举例 SELECT CONVERT (VARCHAR (5), 12345) 返回:字符串12345

23、SELECT CURRENT_USER 返回:你登录的用户名 SELECT DATALENGTH (中国A盟) 返回:7 SELECT HOST_NAME() 返回:你所登录的计算机的名字 SELECT SYSTEM_USER 返回:你当前所登录的用户名 SELECT USER_NAME(1) 返回:从任意数据库中返回“dbo”CURRENT_USER DATALENGTH HOST_NAME SYSTEM_USER USER_NAME返回当前用户的名字 返回用于指定表达式的字节 数 返回当前用户所登录的计算 机名字 返回当前所登录的用户名称 从给定的用户I D返回用户名19ACCP V4.0

24、案例分析1要求某公司印了一批充值卡,卡的密码是随机生成的,现在出 现这个问题:卡里面的“O和0”(哦和零)“i和1”(哎和一),用户反映说看不清 楚,公司决定,把存储在数据库中的密码中所有的“哦”都改成 “零”,把所有的“i”都改成“1”;请编写SQL语句实现以上要求; 数据库表名:Card;密码字段名:PassWord;20ACCP V4.0案例分析1分析这是更新语句,需要使用UPDATE语句; 因为牵涉到字符串的替换,需要使用到SQL Server中的函 数Replace;21ACCP V4.0案例分析1T-SQL两行SQL语句 Update Card Set PassWord = Rep

25、lace(密码,O,0) Update Card Set PassWord = Replace(密码,i,1)一行SQL语句 Update Card Set PassWord = Replace(Replace(密码,O,0),i,1)22ACCP V4.0案例分析2要求在数据库表中有以下字符数据,如:13-1、13-2、13-3、13-10、13-100、13-108、13-18、13-11、1315、14-1、14-2现在希望通过SQL语句进行排序,并且首先要按照前半部 分的数字进行排序,然后再按照后半部分的数字进行排需, 输出要排成这样:13-1、13-2、13-3、13-10、13-1

26、1、13-15、13-18、13-100、13108、14-1、14-2数据库表名:SellRecord;字段名:ListNumber;23ACCP V4.0案例分析2分析这是查询语句,需要使用SELECT语句 需要使用到ORDER BY进行排序,并且在ORDER BY的 排序列中,也需要重新计算出排序的数字来 前半部分的数字,可以从先找到“-”符号的位置,然后, 取其左半部分,最后再使用Convert函数将其转换为数字:Convert(int, Left(ListNumber, CharIndex(-, ListNumber)-1)后半部分的数字,可以先找到“-”符号的位置,然后把从 第一个

27、位置到该位置的全部字符替换为空格,最后再使 用 Convert函数将其转换为数字:Convert(int, Stuff(ListNumber,1, Charindex(-, ListNumber), )24ACCP V4.0案例分析2T-SQLSELECT ListNumber FROM SellRecord ORDER BY Convert(int, Left(ListNumber, CharIndex(-, ListNumber)-1), Convert(int, Stuff(ListNumber,1, Charindex(-, ListNumber), ),思考:还有其他的计算出排序列方法吗? 思考:还有其他的计算出排序列方法吗?25ACCP V4.0总结查询将逐行筛选表中的数据,最后符合要求的记 录重新组合成“记录集”,记录集的结构类似于 表结构 判断一行中的数据项是否为空,使用IS NULL 使用ORDER BY进行查询记录集的排序,并且可 以按照多个列进行排序 在查询中,可以使用常量、表达式、运算符 在查询中使用函数,能够像在程序中那样处理查 询得到的数据项26ACCP V4.0

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!