




已阅读5页,还剩58页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Chapter,1,SQLServer2005T-SQL数据库设计,主讲:毛嘉莉e-mail:maojl1231qq:646194029,Chapter,2,第1章内容回顾,数据库的基本概念数据、表、数据库、数据库管理系统、DBASQLServer2005的主要版本企业版软硬件要求安装过程预安装正式安装SQLServer的管理工具SQLServer数据存储结构,Chapter,3,第2章管理数据库,Chapter,4,本章目标,掌握创建和修改数据库的方法掌握创建和修改表的方法掌握插入、修改、删除和查询数据的方法备份、还原数据库,Chapter,5,本章结构,管理数据库,分离和附加数据库,收缩数据库,扩展数据库,创建数据库,修改数据库,删除数据库,操作数据,更改数据,查询数据,新建表,表的维护,新建用户数据库,Chapter,6,新建数据库,新建用户数据库所有者一个数据文件一个日志文件初始大小自动增长默认路径,主文件,事务日志文件,初始大小,自动增长,数据库名称,所有者,Chapter,7,修改数据库,扩展数据库收缩数据库分离附加数据库删除数据库,SQLServer,Chapter,8,扩展数据库,当数据库中的数据文件或日志文件的空间被占满自动扩展设置文件自动增长指定允许文件增长到的最大大小手动扩展数据库的大小添加数据库文件,添加数据文件,自动增长,最大文件大小,启动自动增长,辅助文件,Chapter,9,收缩数据库,收缩数据库可以把不使用的空间释放出来自动数据库收缩将自动收缩选项设置为TRUE手动数据库收缩收缩数据库收缩某个数据库文件,当前分配的空间,选择收缩的文件,选择文件类型,收缩的选项,可用空间,手动收缩数据库,Chapter,10,分离和附加数据库,用于移动数据库分离数据库将数据库从SQLServer实例中移除除了系统数据库之外保持数据文件和事务日志文件的完整性和一致性附加数据库分离后的数据库的数据和事务日志文件同一个SQLServer实例不同的SQLServer实例,要分离的数据库,添加文件,要附加的数据库,分离和附加数据库,Chapter,11,删除文件和数据库,删除文件文件必须完全为空,才能够删除删除数据库文件及其数据都从服务器上的磁盘中删除一旦删除数据库,即被永久删除不能删除系统数据库,要删除的数据库,删除,Chapter,12,阶段总结,新建数据库更改数据库扩展数据库收缩数据库分离和附加数据库删除数据库,Chapter,13,阶段练习,背景Benet公司已建立一个TestDB数据库用于应用开发,TestDB包含一个数据文件和一个日志文件。现在要:设置TestDB数据文件初始大小为5M,自动增长,最大大小为50M设置TestDB日志文件初始大小为5M,自动增长,限制文件增长为20M设置TestDB为自动收缩目标扩展数据库收缩数据库,Chapter,14,新建表,表和列的名称必须遵守标识符的规定列名在表中必须是唯一的必须为每列指定数据类型,列名,选择数据类型,是否允许为空,Chapter,15,常用数据类型,精确数字如:int-231到231-1日期和时间如:datetime1753年1月1日到9999年12月31日字符串如:Varchar最大存储大小是231-1个字节Unicode字符串如:nvarchar最大存储大小为231-1字节,Chapter,16,向表添加数据,插入新行,查询设计器,Chapter,17,SQL概述,SQL:(StructuredQueryLanguage结构化查询化语言),不仅仅具有查询功能。它是一个通用的、功能极强的关系数据库操作语言。1974年Boyce和Chamberlin提出,首先在IBM公司的关系数据库系统SystemR上实现1986年10月ANSI(美国国家标准局)的数据库委员会批准了SQL作为关系数据库语言的美国标准1987年ISO(国际标准化组织)也通过了这一标准。目前的大中型数据库基本都支持于1992年发布的SQL-92标准,Chapter,18,标准化,有关组织ANSI(AmericanNaturalStandardInstitute)ISO(InternationalOrganizationforStandardization)有关标准SQL-86“数据库语言SQL”SQL-89“具有完整性增强的数据库语言SQL”,增加了对完整性约束的支持SQL-92“数据库语言SQL”,是SQL-89的超集,增加了许多新特性,如新的数据类型,更丰富的数据操作,更强的完整性、安全性支持等。SQL-3正在讨论中的新的标准,将增加对面向对象模型的支持,Chapter,19,SQL对关系数据库模式的支持,用户1,用户2,用户4,视图V1,视图V1,用户3,基本表B1,基本表B2,基本表B4,基本表B3,存储文件S1,存储文件S2,存储文件S4,存储文件S3,SQL用户,VIEW,BaseTable,Storedfile,SQL数据库体系结构,Chapter,20,SQL的特点,面向集合操作一次一集合高度非过程化用户只需提出“做什么”,无须告诉“怎么做”,不必了解存取路径集数据定义、数据查询和数据控制功能于一体统一语法结构的两种使用方式,简单易学,Chapter,21,SQL语言的动词,Chapter,22,SQL语言书写注意事项,1.大小写不敏感2.sql语句中出现的所有单双引号,逗号,分号必须为半角字符。3.字符常量要用引号引起4.数字常量不用加引号5.不同具体RDBMS中,命令可能有差异,以该RDBMS命令手册为准,Chapter,23,Transact-SQL语句,可以实现数据的查询和数据的更改等操作SELECTINSERTUPDATEDELETE,Chapter,24,使用查询编辑器,查询窗口,执行按钮,查询结果,打开查询编辑器,Chapter,25,查询语句,命令格式,SELECTselect_listFROMtable_listWHEREsearch_conditionsORDERBYorder_listASC|DESC,Chapter,26,查询示例3-1,例1:查询所有员工信息SELECT*FROMEmployees*表示对所有列的引用例2:如果只是想要得到某几列的值SELECTName,TitleFROMEmployees明确地列出指定的列内容,Chapter,27,查询示例3-2,例3:查询所有工资大于4000的员工SELECT*FROMEmployeesWHERESalary4000Where子句-按指定的条件返回数据行操作符:=、BETWEENAND、NOT、LIKE等,例4:查询工资在3000到4000的员工SELECT*FROMEmployeesWHERESalaryBetween3000and4000BETWEENAND:指定值的范围,例5:查找雇员表中姓张的员工SELECT*FROMEmployeesWHERENameLIKE张%;LIKE:字符串进行模式匹配,Chapter,28,查询示例3-3,例6:返回按工资降序排序的结果SELECT*FROMEmployeesORDERBYSalaryDESCORDERBY:对行进行排序关键字DESC/ASC:指降序/升序排列,Chapter,29,插入数据,例7:在雇员信息表中加入一个新员工INSERTINTOEmployees(lastname,firstname,title,birthdate,extension)VALUES(王,燕,销售员,1986-11-30,4500)向表中插入一行值例8:把Employees表内容导入到EmployeesNew新表中SELECT*INTOEmployeesNewFROMEmployees从另一个表插入行,插入数据,Chapter,30,更新数据,例9:将所有销售员的工资提高10%UPDATEEmployeesSETSalary=Salary*1.1WHERETitle=销售员;,更新数据,Chapter,31,删除数据,例10:当销售员李芳离职后,将其从表中删除DELETEFROMEmployeesWHEREname=李芳删除符合条件的行例11:从EmployeesNew表中删除所有信息DELETEFROMEmployeesNew删除所有行,删除数据,Chapter,32,表的维护,修改表使用表设计器增加列删除列删除表,添加新列,删除列,确认要删除的表,Chapter,33,阶段总结,新建表查询数据筛选列筛选行排序更改数据库插入数据更新数据删除数据,Chapter,34,阶段练习,背景Benet公司在应用开发数据库TestDB上建立了一个销售部门人员信息表,现在要:由于销售经理调职,删除其记录将销售员提升为销售经理,更改其职位信息查询年龄在30-40岁的员工信息更改销售人员信息目标删除记录更改记录查询记录,Chapter,35,本章总结,管理数据库,分离和附加数据库,收缩数据库,扩展数据库,创建数据库,修改数据库,删除数据库,操作数据,更改数据,查询数据,新建表,表的维护,新建用户数据库,Chapter,36,实验,任务1创建和修改数据库任务2操作数据,Chapter,37,任务1创建和修改数据库,背景Benet公司已经安装好一台SQLServer服务器,现在需要建立1个数据库,具体要求如下:新建数据库名为Benet设置数据文件初始文件大小为10M,不自动增长设置日志文件初始文件大小为10M,不自动增长添加数据文件Data2,初始文件大小为25M,不自动增长验证新建的数据库。设置数据库为自动收缩完成标准根据要求新建一个用户数据库根据要求配置用户数据库参数,Chapter,38,任务2操作数据,背景已建立好Benet数据库,现在需要创建一个人员信息表叫Employee使用表设计器添加员工信息记录查询所有人员的信息,查询所有在1993年1月到1994年6月入职的人员记录。查询销售部男性员工的姓名由于员工“金鹏”离职,删除其记录信息。销售部新招聘一名男销售员叫林青,需插入其一条记录新建一个表只包括“姓名”和“部门”列销售员孙林调到市场部做市场专员,需要更改其记录信息由于公司需要,给表中添加一列为分机号完成标准根据要求新建一个表根据要求对表数据进行查询、更改,Chapter,39,备份和还原,Chapter,40,备份和还原,数据丢失的原因程序错误人为错误计算机失败磁盘失败灾难(如火灾、地震)和偷窃什么是备份数据的副本用于在系统发生故障后还原和恢复数据文件复制备份,Chapter,41,备份类型,Chapter,42,Chapter,43,Chapter,44,点击“确定”,Chapter,45,Chapter,46,恢复模式2-1,Chapter,47,回顾数据库的基础知识,数据库文件的组成:主数据文件:*.mdf次要数据文件:*.ndf日志文件:*.ldf数据库的其他属性:文件存放位置,分配的初始空间,属于哪个文件组文件增长:可以按百分比或实际大小指定增长速度文件容量设置:可以指定文件增长的最大值或不受限,Chapter,48,数据库的建立与撤消-SQL语句,建立一个新数据库createdatabase数据库名撤消一个数据库dropdatabase数据库名,举例:创建sales数据库,UsemasterGoCreatedatabasesalesOn(name=sales_data,filename=d:saledat.mdf,size=10,maxsize=50,filegrowth=5)Logon(name=sales_log,filename=d:saledat.ldf,size=5MB,maxsize=25MB,filegrowth=5MB)Go,Chapter,50,创建数据库,CREATEDATABASE数据库名ONPRIMARY(,n)LOGON(,n),T-SQL创建数据库的语法:,主文件组,可选参数,默认,Chapter,51,创建数据库示例1,CREATEDATABASEstuDBONPRIMARY-默认就属于PRIMARY主文件组,可省略(NAME=stuDB_data,-主数据文件的逻辑名FILENAME=D:projectstuDB_data.mdf,-主数据文件的物理名SIZE=5mb,-主数据文件初始大小MAXSIZE=100mb,-主数据文件增长的最大值FILEGROWTH=15%-主数据文件的增长率)LOGON(NAME=stuDB_log,FILENAME=D:projectstuDB_log.ldf,SIZE=2mb,FILEGROWTH=1MB)GO,数据文件的具体描述,日志文件的具体描述,演示创建数据库1:一个数据文件和一个日志文件,Chapter,52,创建数据库示例2,CREATEDATABASEemployeesON(/*-主数据文件的具体描述-*/NAME=employee1,FILENAME=D:projectemployee1_Data.mdf,SIZE=10,FILEGROWTH=10%),(/*-次要数据文件的具体描述-*/NAME=employee2,FILENAME=D:projectemployee2_Data.ndf,SIZE=20,MAXSIZE=100,FILEGROWTH=1),LOGON(/*-日志文件1的具体描述-*/NAME=employeelog1,FILENAME=D:projectemployeelog1_Log.ldf,SIZE=10,FILEGROWTH=1),(/*-日志文件2的具体描述-*/NAME=employeelog2,FILENAME=D:projectemployeelog2_Log.ldf,SIZE=10,MAXSIZE=50,FILEGROWTH=1)GO,演示创建数据库2:多个数据文件和多个日志文件,Chapter,53,确认数据库的当前状态,要确认数据库的当前状态,通过“数据库属性”窗口的“常规”选项卡查看数据库属性以外,还可以选择sys.databases目录视图中的state_desc列。在查询设计器窗口中输入如下代码并执行,如图所示。Selectname,state,state_descFromsys.databases,Chapter,54,查看数据库状态信息,可以在查询设计器窗口中输入如下代码并执行,即可查看到相关数据文件的状态信息。Selectname,physical_name,type,type_desc,state,state_descFromsys.master_file,Chapter,55,IFEXISTS(select*fromsys.databasesWHEREname=stuDB)DROPDATABASEstuDBCREATEDATABASEstuDBON(.)LOGON()GO,删除数据库,删除数据库的语法:,DROPDATABASE数据库名,EXISTS()语句:检测是否存在stuDB数据库如果存在stuDB数据库,则删除,Chapter,56,数据库更名,两种方法:一种方法是SQLServerManagementStudio中选中此数据库,右击鼠标,在弹出的快捷菜单中选择“重命名”。另一种方法是使用系统存储过程sp_renamedb更改数据库的名称。系统存储过程sp_renamedb语法如下:sp_renamedbdbname=old_name,newname=new_namesp_renamedbsales,saler,例使用ALTERDATABASE改名程序代码如下:ALTERDATABASEsalerMODIFYNAME=salesdb,Chapter,57,限制用户对数据库的访问,在SQLServer2005的运行过程中,有时需要限制用户的访问,例如,管理员要维护数据库,系统需要升级等。这时可以设置限定只能由特定用户访问数据库。,Chapter,58,Multiple:数据库处于正常生产状态,允许多个用户同时访问数据库。Single:指定一次只能一个用户访问。Restricted:限制除db_ower(数据库所有者)、dbcreator(数据库创建者)和sysadmin(系统管理员)以外的角色成员访问数据库。,Chapter,59,修改数据库的排序规则,(1)了解排序规则的含义。以Chinese_PRC_CS_AI_WS为例,该规则可以分成两部分来理解。前半部分
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车企审计中的特殊事项试题及答案
- 2025年建造师考试常见误区与试题及答案
- 全面备考 2024年高级审计师考试试题及答案
- 高级审计师的职业素养及形象塑造试题及答案
- 团员心理辅导的重要性与方式试题及答案
- 锁定目标的入团考试试题及答案
- 2025年医保知识考试题库及答案:医保定点医疗机构管理要点及案例分析试题
- 消防工程考生行为规范试题及答案
- 医疗数据安全与电子病历系统的完善
- 2025年花艺师职业资格考试真题卷:花艺师财务管理与成本控制试题
- 2025年高三高考冲刺主题教育班会:《高三考前心理调适指南:减压赋能 轻松备考》-2024-2025学年高中主题班会课件
- 九一八事变课件
- 鄂尔多斯市水发燃气有限公司招聘笔试真题2024
- 中学生法制教育课件
- 2024游泳救生员具体考试内容及试题及答案
- 河北省唐山市、廊坊市2025年高三高考第二次模拟演练思想政治试卷(含答案)
- 2025年春季江东控股集团有限责任公司社会招聘15人(安徽)笔试参考题库附带答案详解
- 嘉兴市申嘉有轨电车运营管理有限公司招聘笔试真题2024
- 人教版(2024)七年级下册英语期中质量检测试卷(含答案)
- 2025年中国研发服务业行业市场调研分析及投资战略咨询报告
- 2025年大学转专业面试题及答案
评论
0/150
提交评论