事务
在某些情况下,需要把一些操作看成一个整体(如A对B转帐200元,是将A的钱减少,B的钱增加,这两个操作要么都执行,要么都不执行),这就必须用到事务。
事务是一种机制,作为单个逻辑工作单元执行一系列操作,这一组数据库命令要么都执行、要么都不执行。
操作:
1) 开始事务:beginn transaction
2) 提交事务:commit transaction
3) 回滚事务:rollback transaction
4) 保存事务点:save transaction 名称
分类:
1) 显示事务:用begin transation明确指定事务的开始
2) 隐性事务:通过设置set implicit_transactions on语句,将隐式事务打开。隐式事务是不需要描述事务的开始,能够自动的启动事务,但必须显示的提交或回滚事务
3) 自动提交:这是SQL Server的默认模式,它将每条单独的T-SQL语句视为一个事务
-----------------------------------------------------------------------------
视图
视图是一个虚拟表,只是保存在数据库中的Select查询。
视图一般只用于查询,但也可进行数据操作(不推荐使用)
公式:
Create view 视图名
As
Select查询
-----------------------------------------------------------------------------
存储过程
存储过程Procedure相当于函数,是SQL语句和控制流语句的预编译集合。
分类:
--系统存储过程(存在master数据库中,以sp_或xp_开头)
--自定义存储过程(用户自己创建)
公式:
--创建:Create procedure 存储过程名
@参数名 类型[=默认值] [output],
@参数名 类型[=默认值] [output]
With encryption
As
SQL语句
--删除:drop procedure 存储过程名
-----------------------------------------------------------------------------
触发器
触发器:
1) 维护数据完整性的高级约束
2) 能够自动调用的存储过程
3) 实现复杂的商业规则
4) 本身是事务(能够回滚,rollback transaction)
注:触发器是在语句操作完后才触发,可以用关键字update(列名)判断某个列是否被修改
每个触发器有两个特殊表:插入表(Inserted)和删除表(Deleted),这两个表由系统管理,存在在内存中,只读
修改操作
|
Inserted表
|
deleted表
|
增加(INSERT)记录时
|
存放新增的记录
|
……
|
删除(DELETE)记录时
|
……
|
存放被删除的记录
|
修改(UPDATE)记录时
|
存放用来更新的新记录
|
存放更新前的记录
|
公式:
--创建:
Create trigger 触发器名称
On 表
For insert,update,delete
As
T-SQL语句
--删除:
Drop trigger 触发器名称
分享到:
相关推荐
SQL SERVER为每个触发器都创建了两个临时表INSERTED表和DELETED表,这两个表的逻辑结构与被触发器作用的表一样,用户可以读取这两个表的内容,但不能对它们进行修改,触发器执行完后,这两个表也会自动删除。...
sqlserver存储过程,视图多,项目不断优化升级,部分存储过程,视图已经报错,但是一直存在数据库中,用vs2013及以上打开项目,运行清理无效的视图,存储过程
sqlserver系统视图与存储过程应用说明,自己总结的,方便查看进程和表字段的注释
SqlServer数据库字典--表.视图.函数.存储过程.触发器.主键.外键.约束.规则
2.利用SQL Server配置管理器启动、停止SQL Server服务(包括默认实例和命名实例),配置SQL Server服务为自动启动。 3.利用SQL Server配置管理器配置进行SQL Server 2005网络配置,启用默认实例和命名实例的TCP/IP...
SQLserver存储过程与触发器.pdf
sql server 用语句停用全部触发器, 也可启用全部触发器
SQL存储过程习题,SQL触发器习题,SQL习题,基础语法,与W3School类似,初学者学习使用。
SQL Server一些常用的操作,比如增加数据库,删除数据库。对表的一些操作,增删改查,还有触发器、存储过程。都是详细的教程。
SQLServer视图触发器
在SQLSERVER中通过存储过程和触发器创建主键生成器的sql语句,和测试类。
SQL SERVER重置所有视图的存储过程 绝对成功 自己可以去掉游标写个重置单个视图的存储过程,用于表加减字段导致视图错位。
SQL储存过程等的解密,破解字节不受限制,适用于SQLSERVER2000存储过程,函数,视图,触发器
SqlServer存储过程的导出导入 近日在研究SQL的存储过程,这里我陆续将我在使用存储过程中碰到的问题及解决办法发布到网上,请各位大虾指正。 SqlServer存储过程的导出导入,网上相关资料特别少,经过摸索,这里写...
sqlserver2005触发器sqlserver2005触发器sqlserver2005触发器
SQL的存储过程、触发器等建立视图存储过程触发器函数(自定义函数)索引 视图 视图是从一个或几个基本表(或视图)导出的表。不同的是,它是一虚表,数据库中只存放视图的定义,而不存放视图对应的数据,这些数据...
SQL 2005 中触发器、事务,存储过程、视图_T-SQL语句的详细讲解课程学习PPT(含有实例和作业题)
SQL Server 2005编程入门经典(第2版)之存储过程-触发器.pdf
其步骤就是:利用update操作触发器产生的2个虚拟表【inserted】用来存储修改的数据信息和【deleted】表,然后将对应的数据更新到对应数据表中的字段信息中; 1.首先创建3个表: a.信息表: USE [SQL-LI] BEGIN ...