数据库脚本.txt

来自「自著的京川宾馆上网管理系统的PB源代码,其中包括一套非常好用的自定义类库,可以结」· 文本 代码 · 共 80 行

TXT
80
字号
SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO



-- =============================================
-- ALTER  trigger basic template(After trigger)
-- =============================================

ALTER   TRIGGER ti_history
ON history
FOR INSERT
AS 
BEGIN
declare 

@numrows	int,
@xh		int,
@duration	decimal(10,0),--上网持续时间
@dj		decimal(10,2),--上网单价
@swfy		decimal(10,2),--本次上网费用
@yhm		varchar(20),--上网用户名称
@ip		varchar(20),--上网计算机IP地址
@computer	varchar(20),--上网计算机名
@fjh		varchar(20),--房间号 
@kssj		datetime,--上网开始时间
@jssj		datetime,--上网结束时间
@swjsfs		char(2)--上网结算方式

    select  @numrows = @@rowcount

    if @numrows = 0
       return

select @swjsfs=fyjsfs,@dj=fydj from xtgl_xtpzxxb where dwbh='8888' --8888是系统特定的编号,不能更改.

select @xh=id,@computer=compname,@yhm=username,@ip=ip_number,@duration=duration from inserted

select @fjh=fjh from b_krxxb where swyhm=@yhm
--计算上网费用


--按分钟计算   
if @swjsfs = '1'
select @swfy=(@duration/60)*@dj
--按每十分钟计算
if @swjsfs = '2'
select @swfy=(@duration/600)*@dj
--按半小时计算
if @swjsfs = '3'
select @swfy=(@duration/1800)*@dj
--按小时计算
if @swjsfs = '4'
select @swfy=(@duration/3600)*@dj

select @kssj = getdate()

select @jssj = DATEADD (second,@duration,@kssj) 

--写入客人上网明细信息
insert b_krswmxb
values(@xh,@yhm,@kssj,@jssj,@duration,@swfy,@fjh,'N',NULL,@computer,@ip,NULL)


END






GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?