好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 積分獲取和消費的存儲過程學習示例

積分獲取和消費的存儲過程學習示例

熱門標簽:外呼系統的話術 智能外呼系統需要多少錢 安陽天音防封電銷卡 云南全自動外呼系統公司 陽光創信ai外呼獲客系統助力 智能語音車載電話機器人 貴州外呼回撥系統是什么 衛星地圖標注距離 競圣地圖標注服務

1.GM_JF客戶賬戶積分表

2. GM_JF_DETAIL客戶賬戶積分消費記錄

3. GM_JF_ACTION _RULES積分動作規則表

4.GM_JF_GOODS _RULES積分商品規則表

復制代碼 代碼如下:

-- ===============測試=======================================================
/*
declare @StatusCode int = 1;
exec sp_GM_JF_AddScore 'admin','AN_JF_001_001',1,5,0,'',@StatusCode output
print @StatusCode
*/
-- ===========================================================================
/*
* 判斷是否重復獲取積分(首次完善個人資料,首次修改密碼等等不能重復獲取積分)
* 判斷是根據 從GM_JF_DETAIL(詳情表)查詢周期內的數據條數與GM_JF_ACTION_RULES(動作規則表)內的周期重復次數對比
* 如果大于等于周期重復次數,則為重復獲取積分
* 接下來
*     1.詳情表的數據入庫
*     2.判斷總積分表是否存在對應客戶的總積分 沒有則插入一條新的,有 則讀取其數據,并更新
*
*/
ALTER PROCEDURE [dbo].[sp_GM_JF_AddScore]
@ACCOUNT_ID     varchar(30),
@JF_CategoryNumber varchar(15),
@CARD_NUM     int,
@HQ_JF_AMOUNT     int,
@State     varchar(16),
@USE_DESC     varchar(400),

@StatusCode     int output     -- 狀態碼: 0:失敗 1:成功 2: 不能重復獲取
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

declare
@repetitionsCycle     float=0,    --周期(天)
@repetitionsCycle_second    int=0,--周期(秒)
@repetitionsFrequency     int=0,    --一個周期內允許最大次數
@realFrequency     int=0,     --實際周期

@USE_DATE     datetime = GETDATE();
--是否重復獲取積分
select top(1) @repetitionsCycle=RepetitionsCycle,@repetitionsFrequency=RepetitionsFrequency from GM_JF_ACTION_RULES where AN_CategoryNumber=@JF_CategoryNumber;

if(@repetitionsCycle1)
BEGIN
set @repetitionsCycle_second = (@repetitionsCycle-1)*24*60*60;
select @realFrequency=COUNT(1) from GM_JF_DETAIL where ACCOUNT_ID=@ACCOUNT_ID and JF_CategoryNumber=@JF_CategoryNumber and USE_DATE = @USE_DATE and USE_DATE >= CONVERT(varchar(19),DATEADD(SECOND,-@repetitionsCycle_second,@USE_DATE),120)
END
ELSE
BEGIN
select @realFrequency=COUNT(1) from GM_JF_DETAIL where ACCOUNT_ID=@ACCOUNT_ID and JF_CategoryNumber=@JF_CategoryNumber and USE_DATE = @USE_DATE and USE_DATE >= CONVERT(varchar(10),DATEADD(DAY,-(@repetitionsCycle-1),@USE_DATE),120)
END   

if(@realFrequency>=@repetitionsFrequency)    --實際周期大于周期次數
begin
set @StatusCode = 2;
return 2;
end

declare @count int = 0;     --數據條數
declare @temp_table table    --表變量
(
ACCOUNT_ID varchar(30),
JF_AMOUNT decimal(16,2),
TTL_JF_AMOUNT decimal(16,2),
Last_Update_Time datetime,
[Version] int
);

begin tran;
--插入詳情
insert into GM_JF_DETAIL
(ACCOUNT_ID,JF_CategoryNumber,CARD_NUM,HQ_JF_AMOUNT,[State],USE_DESC)
values
(@ACCOUNT_ID,@JF_CategoryNumber,@CARD_NUM,@HQ_JF_AMOUNT,@State,@USE_DESC)

--填充表變量
insert into @temp_table select ACCOUNT_ID,JF_AMOUNT,TTL_JF_AMOUNT,Last_Update_Time,[Version] from GM_JF where ACCOUNT_ID=@ACCOUNT_ID
select @count = count(1) from @temp_table;
--判斷并更新總積分(0:添加 其他:修改)
IF(@count=0)
begin
insert into GM_JF(ACCOUNT_ID,JF_AMOUNT,TTL_JF_AMOUNT)
values
(@ACCOUNT_ID,@HQ_JF_AMOUNT,@HQ_JF_AMOUNT)
end
else
begin
declare @JF_AMOUNT int,     --總積分
@TTL_JF_AMOUNT int,    --可用積分
@Version int;     --版本號

select @JF_AMOUNT=JF_AMOUNT,@TTL_JF_AMOUNT=TTL_JF_AMOUNT,@Version=[Version] from @temp_table where ACCOUNT_ID=@ACCOUNT_ID;

update GM_JF set JF_AMOUNT=(@JF_AMOUNT+@HQ_JF_AMOUNT),TTL_JF_AMOUNT=(@TTL_JF_AMOUNT+@HQ_JF_AMOUNT),Last_Update_Time=GETDATE(),[Version]=(@Version+1) where ACCOUNT_ID=@ACCOUNT_ID
end

Commit tran;
set @StatusCode = 1;

IF(@@ERROR>0)
BEGIN
set @StatusCode = 0;
ROLLBACK tran;
END
END

您可能感興趣的文章:
  • sqlserver數據庫使用存儲過程和dbmail實現定時發送郵件
  • 用存儲過程向數據庫存值的具體實現
  • MSSQL監控數據庫的DDL操作(創建,修改,刪除存儲過程,創建,修改,刪除表等)
  • sqlSQL數據庫怎么批量為存儲過程/函數授權呢?
  • mysql 導入導出數據庫以及函數、存儲過程的介紹
  • Oracle中 關于數據庫存儲過程和存儲函數的使用
  • sql處理數據庫鎖的存儲過程分享
  • SQL Server中通過擴展存儲過程實現數據庫的遠程備份與恢復
  • MSSQL MySQL 數據庫分頁(存儲過程)
  • 從創建數據庫到存儲過程與用戶自定義函數的小感
  • SQLserver 數據庫危險存儲過程刪除與恢復方法
  • sqlserver關于分頁存儲過程的優化【讓數據庫按我們的意思執行查詢計劃】
  • mysql 查詢數據庫中的存儲過程與函數的語句
  • 分頁存儲過程(用存儲過程實現數據庫的分頁代碼)
  • 為數據庫生成某個字段充填隨機數的存儲過程
  • sql 判斷數據庫,表,存儲過程等是否存在的代碼
  • Oracle存儲過程之數據庫中獲取數據實例
  • sqlserver 復制表 復制數據庫存儲過程的方法

標簽:營口 鄂爾多斯 欽州 河源 湘潭 周口 預約服務 寧夏

巨人網絡通訊聲明:本文標題《積分獲取和消費的存儲過程學習示例》,本文關鍵詞  積分,獲取,和,消費,的,存儲,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《積分獲取和消費的存儲過程學習示例》相關的同類信息!
  • 本頁收集關于積分獲取和消費的存儲過程學習示例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 最新最好的电视| 国产又大又粗又猛又爽的视频| 女人张开腿让男人操| 亚洲AV成人片无码网站| 亚洲一区二区三区女厕偷拍| 别进的太深受不了太大了| 国产 精品一区二区三区| 日韩三级| 为爱上色| 午夜成人免费影院| 久久综合九色综合国产| 99国产精品免费网站| 成人自拍视频网站| 黄视频大全| 国产高潮抽搐喷白浆| 国产精品嫩草影院在线观看免费| 亚洲AV精品一区二区毛片| 91精品人妻熟女毛片A片骨灰盒| 欧美一级特黄乱妇高清视频| 性瘾症| 成人亚洲AV精品一区二区三区| 日本爱爱网| 免费精品视频一区二区三区| 好男人在线播放免费2019| 久久精品亚洲AV无码毛的用法| 伦理电影午夜伧理片| 欧美做爰又粗又大免费看五期| 日本年轻护士毛茸茸视频 | 一个人看的www高清视频| 国产V日韩V欧美综合| 安那情欲史| 国产福利片在线易阳| 农村妇女野战BwwBww| 91精品国产自产在线观看永久∴| 精品一区二区高清免费观看| 国内自啪| 美女被?到高潮喷出白| 亚洲午夜aaa在线Av观看 | 我的女人你惹不起惹不起| 91视频app下载污| 小泽玛利亚国产在线视频|