从零开始学SQLServer-第4章走进SQL语句的世界.ppt

上传人:xt****7 文档编号:5170610 上传时间:2020-01-22 格式:PPT 页数:34 大小:204.50KB
返回 下载 相关 举报
从零开始学SQLServer-第4章走进SQL语句的世界.ppt_第1页
第1页 / 共34页
从零开始学SQLServer-第4章走进SQL语句的世界.ppt_第2页
第2页 / 共34页
从零开始学SQLServer-第4章走进SQL语句的世界.ppt_第3页
第3页 / 共34页
点击查看更多>>
资源描述
第4章走进SQL语句的世界 SQL StructuredQueryLanguage 结构化查询语言 是一种数据库查询和程序是一种数据库查询和程序设计语言 用于存取数据以及查询 更新和管理关系数据库系统 同时也是数据库脚本文件的扩展名 而T SQL是标准SQL程式设计语言的增强版 它是用来让应用程式与SQLServer沟通的主要语言 本章以T SQL为基础 从数据定义语句 DDL 数据操作语句 DML 数据控制语句 DCL 等方面介绍SQL以及T SQL的基本语法 具体内容如下 数据定义语句 DDL 数据操作语句 DML 数据控制语句 DCL 其他基本语句循环控制语句批处理语句小结 4 1数据定义语句 DDL SQL是 结构化查询语言 StructuredQueryLanguage 的简称 是由IBM的研究中心在1970年代初期所开发的 是专门用于关连式资料库的一种查询语言 其中包括数据定义语句 数据操作语句 数据控制语句 数据库模式定义语句DDL DataDefinitionLanguage 是用于描述数据库中要存储的现实世界实体的语言 通常是数据库管理系统的一部分 用于定义数据库的所有特性和属性 尤其是行布局 列定义 键列 有时是选键方法 文件位置和存储策略 常见的数据库定义语言包括 CREATEDATABASE 创建数据库 CREATETABLE 创建表 ALTERTABLE 修改数据表 DROPVIEW 删除查询命令 等 下面我们将分别介绍各种数据定义语句 4 1 1CREATE的应用 CREATE是数据库操作语言中极其重要的一部分 也是经常要用到的一部分 其中包括数据库的创建 数据库表的创建以及创建约束等 下面我们将举例熟悉CREATE的具体应用 1 创建数据库2 创建表 4 1 2DROP的功能 DROP语句是数据库操作中不可或缺的一部分 通过使用DROP语句 可以轻松地删除索引 表和数据库 下面将通过实例进行数据库删除 DROPDATABASE 删除表 DROPTABLE 的操作 1 数据库的删除2 数据库中的表的删除 4 1 3ALTER的功能 当数据库结构无法满足要求时 可以使用ALTER语句进行数据库及其内容表的修改 以下将以修改数据库 ALTERDATABASE 修改表结构 ALTERTABLE 为例 对ALTER语句进行详细讲解 1 修改数据库2 修改表 4 2数据操作语句 DML 数据操作语言 DML DataManipulationLanguage 是使用户能够查询数据库以及操作已有数据库中的数据的计算机语言 在SQL语言中占据着非常重要的地位 其大体包括数据的插入 INSERT 数据的删除 DELETE 数据的更改 UPDATE 数据的查询 SELECT 4 2 1数据的插入 INSERT 向一个已经存在的表中插入数据 可以分为一次插入一条记录 也可以分为一次插入多条记录 但是需要注意的是 无论哪种方式 输入的数据都必须符合数据类型及其相应的约束 其语法结构如下 INSERT INTO table name 4 2 1数据的插入 INSERT 4 2 2数据的删除 DELETE 删除表中的数据 是指在表中删除记录 但是表的结构 约束 索引等并没有删除 删除数据可以分为按指定条件删除一个或者多个元组 也可以不指定条件对数据表中所有元组进行删除 甚至可以运用子查询的结果进行删除 1 按照指定条件删除一个或者多个元组2 删除表中所有元组 4 2 2数据的删除 DELETE 4 2 3数据的更改 UPDATE UPDATE语句允许用户在已知的表中对现有的行进行修改 修改数据有以下几种方式 可以按指定条件修改一个或者多个元组 也可以修改表中所有元组 甚至可以利用子查询的结果进行数据的修改 1 按指定条件修改数据2 修改表中所有元组 4 2 3数据的更改 UPDATE 4 2 3数据的更改 UPDATE 4 2 4数据的查询 SELECT 数据查询是数据库编程中最基本并且也是最常用的一部分 对用户来说 数据查询是数据库最重要的功能 SQLServer的数据查询使用T SQL语言 其最基本的语句是SELECT语句 SELECT语句的功能相当强大 下面将讲述数据查询的实现方法 1 SELECT语句的结构2 基本SELECT查询3 带有限制条件的SELECT查询4 表达式在查询列表中的使用5 取得查询结果的部分行集6 使用逻辑表达式NOT 非 进行查询7 使用逻辑表达式AND 与 进行查询8 使用逻辑表达式OR 或 进行查询9 使用通配符进行模糊查询10 使用BETWEEN AND关键字进行查询11 查询排序 4 3数据控制语句 DCL 数据控制语言 DCL 是用来设置或者更改数据库用户或角色权限的语句 这些语句包括GRANT DENY REVOKE等语句 在默认状态下 只有sysadmin dbcreator db owner或db securityadmin等角色的成员才有权利执行数据控制语言 4 3 1如何给用户授予权限 GRANT 当用户成为数据库中的合法用户后 除了可以查询系统表之外 并不具有操作数据库中对象的任何权限 因此 需给数据库中的用户授予操作数据库对象的权限 通常 SQLServer对权限的管理包含三方面内容 1 授予权限 2 收回权限 3 拒绝权限 以下我们将简要介绍下GRANT的作用 详细内容后面会专门介绍 对象权限是指用户对数据库的表 视图等对象的操作权 相当于数据操作语言的语句权限 例如是否进行查询 增加 删除等 4 3 2拒绝权限操作 DENY 很多时候 有些表并不是想让每个人来查看的 此时可以使用SQL新特性DENY来禁止此表的SELECT权限 DENY可以被管理员用来禁止某个用户对一个对象的所有访问权限 下面通过一个实例来加深对此语句的使用 例4 21 拒绝sa1用户对student表进行修改操作 DENYUPDATONstudentTOsa1 4 3 3收回权限操作 REVOKE 当要对一个用户取消特权 比如 插入权限 查询权限 删除权限等 就要使用T SQL语句进行收回权限操作 T SQL语言提供了REVOKE语句来实现此功能 4 4其他基本语句 SQL中除了数据定义语句 数据操作语句 数据控制语句外还有其他一些基本语句 以此来辅助语句的执行 在此 将介绍DECLARE SET PRINT等几个基本语句来熟悉语句的应用和操作 4 4 1数据声明DECLARE DECLARE命令用于声明一个或多个局部变量 游标变量 函数 过程等 在用DECLARE命令声明后所有的变量被赋值NULL 需要用SET或者SELECT赋值 具体语法如下 语法1 Public Private DeclareSubnameLib libname Alias aliasname arglist 语法2 Public Private DeclareFunctionnameLib libname Alias aliasname arglist Astype 4 4 2数据赋值SET SET命令即可用于对局部变量进行赋值 也可用于设定用户执行SQL命令时SQLServer的处理选项设定 当SET用于给局部变量赋值时语法如下 SET local variable expression SELECT语句同样可以用于给变量赋值 其语法如下 SELECT LOCAL VARIABLE expression 4 4 3数据输出PRINT PRINT输出时的语法如下 PRINT local variable FUNCTIONPRINT命令向客户端返回一个用户自定义的信息 即显示一个字符串的局部变量或者全局变量 如果变量不是字符串必须先用数据列席转换函数CONVERT转换为字符串 SELECT同样可以完成数据输出任务 其语法如下 SELECT local variable FUNNCTION string expression具体应用已在局部变量处详细介绍 4 5循环控制语句 SQL语句从上至下顺序执行 但是很多时候并不是我们所希望的 Transact SQL威威猫提供了用于编写过程性代码的语法结构 使在程序执行时按照自己的意愿改变程序执行的顺序 T SQL可用来进行顺序 分支 循环 存储过程 批处理 语句块等程序设计 编写结构化的模块代码 下面介绍主要的流程控制语句 4 5 1语句块BEGIN END 使用BEGIN和END关键字来创建SQL语句块 BEGIN和END块间的语句按单个语句块处理 按一个单元执行 BEGIN和END通常用于定义包含其他流程控制语句 如IF WHILE及CASE 的语句块 语法如下 BEGIN sql statement statement block END 4 5 2GOTO语句 GOTO语句将执行控制从代码中的一个位置转移至用户定义标签后的另一个位置 GOTO语句和标号可以用在存储过程 批处理或者语句块中 标号名必须遵守T SQL命名规则 一般情况下 GOTO语句常用着WHILE语句和IF语句中 使用GOTO语句 首先定义一个标号 其语法如下 标号 然后使用GOTO语句转移到所定义的标签处 语法如下 GOTO标签 4 5 2GOTO语句 4 5 3IF ELSE语句 如果需要在执行一组语句前先测试条件 则会在代码中同时存在几种情况 因此 IF ELSE语句可以用来求布尔表达式的值 IF语句提出可能的情况 接着基于这些情况会有相应的执行语句 ELSE关键字便于IF返回FALSE时执行其他语句 其语法如下 IFboolean expression sql statement statement block ELSEIFboolean expression sql statement statement block ELSE sql statement statement block 4 5 4CASE语句 CASE语句用于多条件分支选择 虽然IF ELSE在某些时候同样可以完成CASE语句所要实现的功能 但是使用CASE语句可以更加简化SQL表达式 CASE关键字使您可根据表达式的真假来确定是否返回某个值 可在允许使用表达式的任何位置使用这一关键字 具体语法如下 CASEexpressionWHENexpression1THENexpression1 WHENexpression2THENexpression2 ELSEexpressionN END 4 5 5WHILE循环语句 在WHILE语句中设置重复执行SQL语句或语句块的条件 只要指定的条件为真 就重复执行语句 很多时候 可以使用BREAK和CONTINUE关键字在循环内部控制WHILE循环中语句的执行 具体语法如下 WHILEBoolean expression sql statement statement block BREAK sql statement statement block CONTINUE 4 5 6WAITFOR语句 很多事情 可能不愿意或无法马上就做 不过也不愿意一直若等到适当的时间再去做需要的事情 SQL中提供了WAITFOR语句 它用于暂时停止执行SQL语句 语句块或者存储过程等 直到所设定的时间已过或者所设定的时间已到才继续执行 具体语法如下 WAITFORDELAY TIMEWAITFOR语句会等待你指定输入参数 你可以指定某件事的确切发生时间 也可以指定要等待的时间 参数说明如下 1 DELAY参数2 TIME参数 4 5 7RETURN语句 return命令用于结束当前程序的执行 返回到上一个调用它的程序或其他程序 其语法格式如下 return整数值或变量return语句要指定返回值 如果没有指定返回值 SQLServer系统会根据程序执行的结果返回一个内定值 4 6批处理语句 批处理 从客户机传递到服务器上的一组完整的数据和SQL指令 可以是一条也可以包含多条SQL指令 组成一个批处理 一个批处理中只要存在一处语法错误 整个批处理都无法通过编译 批处理中可以包含多个存储过程 但除第一个存储过程外剩下的存储过程前面都必须使用Exec关键字 某些特殊的SQL指令不能和别的SQL指令共存在一个批处理中 如CreateTable命令 CreateView命令等 这些指令只能独自存在于一个单独的存储过程中 4 6批处理语句 4 7小结 SQL语句是SQLServer的核心 是进行SQLServer2005数据库编程的基础 本章从数据定义语句 DDL 数据操作语句 DML 数据控制语句 DCL 等进行介绍 并且对一些基本语句如DECLARE语句 SET语句 PRINT等进行简要介绍 接着介绍了常用循环控制语句如BEGIN END GOTO IF ELSE CASE等的应用 最后介绍了在实际编程中常使用的批处理语句 使读者了解SQL语句的基本分类 对基本流程控制语句准确掌握
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


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

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


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