易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL函数:事务实例 伟少天地

事务就是负责把一系列操作看做一个独立的逻辑单元,这些操作要么同时成功,要么同时失败。下面是一个经典的例子:
create procedure TransferMoeny
(
    @fromAccountNo varchar(50),-- 转出账号
    @ToAccountNo varchar(50),--转入账号
    @MoneyCount money--转账金额
)
as
--判断账号是否存在
if exists (select 1 from 帐户表 where 账号 = @fromAccountNo) 
begin
    if exists (select 1 from 帐户表 where 账号 = @ToAccountNo) 
    begin
        --判断转出金额是否大于当前余额
        if (select 当前余额 from 帐户表 where 账号 = @fromAccountNo) >= @MoneyCount
        begin
            --开始转账
            begin transaction
            insert into [存取记录表] ([账号],[存取类型], [存取金额]) values(@fromAccountNo, -1,@MoneyCount)
            if @@error <> 0
            begin
                rollback transaction--发生错误则回滚事务,无条件退出l
                return
            end
                   &nbs


相关文档:

SQL存储过程

示例
A. 使用带有复杂 SELECT 语句的简单过程
下面的存储过程从四个表的联接中返回所有作者(提供了姓名)、出版的书籍以及出版社。该存储过程不使用任何参数。
USE pubs
IF EXISTS (SELECT name from sysobjects
         WHERE name = 'au_info_all' AND type = 'P')
&nb ......

Truncate Logs for SQL Server 2008

Truncate Logs for SQL Server 2008
I had previously posted how to Truncate Logs for SQL Server 2005. Unfortunately, this method does not work in SQL Server 2008. The reason is because the “WITH TRUNCATE_ONLY” command is no longer in SQL 2008. Assuming you run in full recovery mode, the n ......

oracle PL/SQL FOR UPDATE 与 FOR UPDATE OF的区别

PL/SQL-FOR UPDATE 与 FOR UPDATE OF的区别
url:http://hi.baidu.com/1413/blog/item/a521251f7e5993c4a686696b.html
数据库 oracle for update of   和   for update区别    
select * from TTable1 for update 锁定表的所有行,只能读不能写
2 select * from TTable1 wher ......

SQL Server 2008 Books Online (November 2009)

若要收缩特定数据库的所有数据和日志文件,请执行 DBCC SHRINKDATABASE 命令。若要一次收缩一个特定数据库中的一个数据或日志文件,请执行 DBCC SHRINKFILE
命令。
若要查看数据库中当前的可用(未分配)空间量,请运行 sp_spaceused

可在进程中的任一点停止 DBCC SHRINKDATABASE 操作,任何已完成的工作都将保留。 ......

SQL DBA Interview question and answer


<!--
/* Font Definitions */
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:宋体;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"Cambria Mat ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号