基于银行数据库 存储过程、函数、触发器、游标练习

本文介绍了在银行数据库中使用存储过程、函数和触发器进行操作的示例。包括统计特定支行的客户总数、计算贷款和存款总额、获取客户信息以及实现透支触发器等功能。通过这些示例,展示了数据库在处理业务逻辑时的灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

--存储过程 函数 触发器

--1.输入任意支行,统计其总客户(存款客户和贷款客户)的个数,这里要单独写
--create function customer_count4(@branch_name nvarchar(30))
--returns integer
-- begin
--    declare @a int
--    declare @b innt
--    declare @c int
--    set @a=(select count(*) from account join depositor on(account.account_number=depositor.account_number) where branch_name=@branch_name)
--    set @b=(select count(*) from loan where branch_name=@branch_name)
--    set @c=@a+@b
--    return @c
--end

--select dbo.customer_count4('ABC') as customer_count

--drop function customer_count1
--drop procedure cun_loan_count

--法二 存储过程
--create procedure customer_count2(@branch_name nvarchar(30),@customer_count int output)
--as begin
--    declare @a int
--    declare @b int
    
--    set @a=(select count(*) from account join depositor on(account.account_number=depositor.account_number) where branch_name=@branch_name)
--    set @b=(select count(*) from loan where branch_name=@branch_name)
--    set @customer_count=@a+@b
--    end
--    declare @c_count int
--    execute customer_count2 @branch_name='abc',@customer_count=@c_count output
--    print @c_count


--2、输入任意支行,返回一个zhi行的贷款总额,存款总额,总资产
--create procedure money_count(@branch_name nvarchar(30),@amount_count int output,@balance_count int output,@assets_count int output)
--as begin
--    set @amount_count=(select sum(amount) from loan where branch_name=@branch_name)
--    set @balance_count=(select sum(balance) from account where branch_name=@branch_name)
--    set @assets_count=(select assets from branch where branch_name=@branch_name)
--end

--declare @am int
--declare @ba int
--declare @as int
--execute money_count @branch_name='abc',@amount_count=@am output,@balance_count=@ba output,@assets_count=@as output
--print @am
--print

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值