第五讲SQL编程与触发器.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五讲 SQL 编程与触发器 一、Transact-SQL 语法要素 二、批处理命令 GO 向 SQL Server 描述由 Transact-SQL 语句组成的批处理 实际上并不是 Transact-SQL 语句 EXEC 用于执行用户定义的函数、系统存储过程、用户自定义存储过程或一个扩展的存储过程 在一个 Transact-SQL 批处理内部,EXEC 能控制一个字符串的运行 三、 注释语句 嵌于行内的注释语句 块注释语句 四、 标识符 标准标识符 第一个字符必须是字母,a~z 或 A~Z 第一个字符后可以是数字、字母或各种符号 当标识符的第一个字符是符号时,代表它有特殊用处 1. 以@开头的标识符代表局部变量或参数 2. 以#开头的标识符代表临时表或存储过程 3. 以##开头的标识符代表一个全局临时对象 限定标识符 当对象名称包含空格时 当保留关键字被用作对象名或对象部分的名字时 用中括号表示的括号标识符([ ]) 用双引号表示的引用标识符(“ ”) 五、标识符的命名原则 使用短的名字 尽量使用有意义的名字 使用简单明了的命名约定 使用能够区分出对象类型的标识符 视图 存储过程 保持对象名和用户名的一致性 sales 表和 sales 角色 六、 数据类型 数字型 代表数字,包括各种整数如 int、tinyint、smallint 和 bigint 日期型 代表日期和日期范围,包括 datetime 和 smalldatetime 字符型 用于表示字符数据或字符串,包括 char、nchar、varchar 和 nvarchar 二进制型 在存储与结构上与字符型数据相似,包括 binary 和varbinary 惟一标识符(GUID) 代表一个全局的特殊标识符,是一个 16 位 16 进制的值 SQL 变量 代表 SQL Server 所支持的各种数据类型 表 代表一个表结构,在 SQL Server 2000 中,可以把表保存在字段中 七、 变量 用 DECLARE @ 语句定义局部变量 用 SET 或 SELECT @ 语句给局部变量赋值 局部变量只具有局部作用范围 只能在定义它的语句、批处理或过程中使用 八、系统函数 其他系统函数 日期函数 DATEADD DATEDIFF DATENAME DATEPART DAY GETDATE GETUTCDATE MONTH YEAR 数学函数 字符串函数 ASCII NCHAR CHAR PATINDEX SPACE CHARINDEX REPLACE STR QUOTENAME STUFF LEFT REPLICATE SUBSTRING LEN REVERSE UNICODE LOWER RIGHT UPPER LTRIM RTRIM? 系统函数 DB_ID 和 DB_NAME HOST_ID 和 HOST_NAME OBJECT_ID 和 OBJECT_NAME 九、 运算符 运算符的种类 算术运算符 比较运算符 字符串联运算符 逻辑运算符 运算符优先级 十、 表达式 十一、流控制的语言元素 保留的关键字 有特定含义的标识符名 Transact-SQL 关键字 ANSI SQL-92 关键字 ODBC 保留关键字 不要使用保留关键字作为标识符名 十 触发器 触发器介绍 1、触发器是一类特殊的存储过程,被定义为在对特定表或视图发出 UPDATE、INSERT 或 DELETE 语句时自动执行 和特定表或视图关联。触发器定义在特定的表或视图上,称为触发器表或触发器视图 自动调用。当试图在某个表插入、更新或删除数据,而在那个表上定义了针对所做动作的触发器,那么触发器会自动执行 不能被直接调用。不像普通的存储过程,触发器不能被直接调用,也不传递或接受参数 是一个事务的部分。触发器及触发它的语句被视为单个事务,可以在触发器内的任何地方被回滚 3、触发器的使用 在数据库中的相关表上实现级联更改 在数据库的相关表上使用触发器可实现级联更新或删除 强制比 CHECK 约束更复杂的数据完整性 和 CHECK 约束不同,触发器可以引用其他表中的列 通过下列方法使用触发器来强制复杂的引用完整性:根据情况确定是否级联更新与删除、创建多行触发器、在数据库间强制引用完整性 定义用户定制的错误信息 通过使用触发器,可以在特定条件出现时调用预定义或动态定义的定制错误信息 比较数据修改前后的状态 大部分触发器提供了引用被修改数据的能力,这样就允许用户在触发器中引用正被修改语句所影响的行 二、定义触发器 1、

文档评论(0)

wxc6688 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档