999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一個SQL游標的應用實例

2014-11-14 10:34:27戴晴宜
科技資訊 2014年12期

戴晴宜

摘 要:關系數據庫中的操作會對整個行集起作用,應用程序,特別是交互式聯機應用程序,并不總能將整個結果集作為一個單元來有效地處理。這些應用程序需要一種機制以便每次處理一行或一部分行。游標就是提供這種機制的對結果集的一種擴展。本文通過一個實例,介紹了SQL存儲過程中游標的使用。

關鍵詞:SQL游標 游標嵌套 試用權限

中圖分類號:TP311 文獻標識碼:A 文章編號:1672-3791(2014)04(c)-0026-02

二次文獻共建共享網絡服務平臺(以下簡稱平臺)是《全國報刊索引》編輯部一個網絡服務平臺,它利用現代化信息技術和服務手段,聯合海內外廣大圖情界同仁,在特色資源、近代文獻等珍貴文獻搶救和發掘方面合作共建,為廣大讀者用戶提供良好的信息參考和決策咨詢服務,也為海內外研究國學的人士獲取信息提供更多的便利。目前,《全國報刊索引》編輯部已擁有全文數據庫、索引數據庫、專題數據庫和特色資源數據庫四種類型數據庫。[1]

在平臺的運維工作中,經常會收到服務組提出的技術支持請求。有一次,為了配合數據庫產品的推廣活動,服務組希望技術部協助為一批試用用戶賬號開放產品試用權限。

平臺的文獻數據庫產品結構如圖1所示,分為三層:產品大類(如全文庫、索引庫等)、產品類(如晚清期刊全文數據庫(1833~1911)、民國時期期刊全文數據庫(1911~1949)等)、產品(如遐邇貫珍、點石齋畫報等)。這次收到的要求是,按不同需要分配產品權限:如單個產品的試用、單個產品類的試用。

按照慣例,類似這種臨時性的數據處理請求,以SQL存儲過程的方式來完成數據處理的相關任務,再根據實際需要,評估是否需要將該功能加到平臺應用中。

1 單個產品的試用權限

這里要做的是為每一個試用賬號在產品試用表中添加一條記錄,由于需要對試用賬號這個查詢結果集進行逐行處理,因此,需要使用一個游標來實現,具體如下:

……

DECLARE @trid INT

DECLARE @cp INT

DECLARE usr CURSOR FOR

SELECT

trial_id

FROM trialusr

OPEN usr

FETCH NEXT FROM usr INTO @trid

WHILE @@fetch_status = 0

BEGIN

SET @cp = X /* X為任意數字 */

BEGIN TRANSACTION;

INSERT INTO trialcp(trial_id,cp,start,end)

VALUES(@trid,@cp,GETDATE(),(GETDATE()+7))

COMMIT;

FETCH NEXT FROM usr INTO @trid

END

CLOSE usr

DEALLOCATE usr

……

2 單個產品類的試用權限

在這個需求中,有2個結果集,一個是試用賬號,另一個是產品類中的產品id,并且兩者都需要進行逐行處理,以實現一對一的關系,因此考慮使用2個游標,并且嵌套使用,具體如下:

……

DECLARE @trid INT

DECLARE @cpl varchar(50)

DECLARE @cp INT

SET @cpl=捪摯饕?1950~)?

DECLARE usr CURSOR FOR

SELECT

trial_id

FROM trialusr

OPEN usr

FETCH NEXT FROM usr INTO @trid

WHILE @@fetch_status = 0

BEGIN

BEGIN

DECLARE cur_cp CURSOR FOR

SELECT cpid

FROM cplist

WHERE cpl = @cpl

OPEN cur_cp

FETCH NEXT FROM cur_cp INTO @cp

WHILE @@fetch_status = 0

BEGIN

BEGIN TRANSACTION;

INSERT INTO trialcp(trial_id,cp,start,end)

VALUES(@trid,@cp,GETDATE(),(GETDATE()+7))

COMMIT;

FETCH NEXT FROM cur_cp INTO @cp

END

CLOSE cur_cp

DEALLOCATE cur_cp

FETCH NEXT FROM usr INTO @trid

END

CLOSE usr

DEALLOCATE usr

……

以上,是根據服務組提出的技術支持需求,形成的解決方案,在測試數據庫中測試及調試后,證實該方案可行,并準確實現了服務組的要求。

3 結語

關系數據庫中的操作會對整個行集起作用。由SELECT語句返回的行集包括滿足該語句的WHERE子句中條件的所有行。這種由語句返回的完整行集稱為結果集。應用程序,特別是交互式聯機應用程序,并不總能將整個結果集作為一個單元來有效地處理。這些應用程序需要一種機制以便每次處理一行或一部分行。游標就是提供這種機制的對結果集的一種擴展。[2]

本次技術支持任務中,嘗試了通過游標的使用,來實現批量數據的逐行處理。在數據處理的工作中,經常會遇到類似對數據集進行逐行處理的任務,希望本實例,可以為SQL的初學者提供參考。

參考文獻

[1] 《全國報刊索引》二次文獻共建共享網絡服務平臺數據庫資源介紹[EB/OL].http://www.cnbksy.com/shlib_tsdc/product/list.do.

[2] MSDN—Transact-SQL 參考:游標(數據庫引擎)[EB/OL].http://msdn.microsoft.com/zh-cn/library/ms191179(v=sql.105).aspx.endprint

摘 要:關系數據庫中的操作會對整個行集起作用,應用程序,特別是交互式聯機應用程序,并不總能將整個結果集作為一個單元來有效地處理。這些應用程序需要一種機制以便每次處理一行或一部分行。游標就是提供這種機制的對結果集的一種擴展。本文通過一個實例,介紹了SQL存儲過程中游標的使用。

關鍵詞:SQL游標 游標嵌套 試用權限

中圖分類號:TP311 文獻標識碼:A 文章編號:1672-3791(2014)04(c)-0026-02

二次文獻共建共享網絡服務平臺(以下簡稱平臺)是《全國報刊索引》編輯部一個網絡服務平臺,它利用現代化信息技術和服務手段,聯合海內外廣大圖情界同仁,在特色資源、近代文獻等珍貴文獻搶救和發掘方面合作共建,為廣大讀者用戶提供良好的信息參考和決策咨詢服務,也為海內外研究國學的人士獲取信息提供更多的便利。目前,《全國報刊索引》編輯部已擁有全文數據庫、索引數據庫、專題數據庫和特色資源數據庫四種類型數據庫。[1]

在平臺的運維工作中,經常會收到服務組提出的技術支持請求。有一次,為了配合數據庫產品的推廣活動,服務組希望技術部協助為一批試用用戶賬號開放產品試用權限。

平臺的文獻數據庫產品結構如圖1所示,分為三層:產品大類(如全文庫、索引庫等)、產品類(如晚清期刊全文數據庫(1833~1911)、民國時期期刊全文數據庫(1911~1949)等)、產品(如遐邇貫珍、點石齋畫報等)。這次收到的要求是,按不同需要分配產品權限:如單個產品的試用、單個產品類的試用。

按照慣例,類似這種臨時性的數據處理請求,以SQL存儲過程的方式來完成數據處理的相關任務,再根據實際需要,評估是否需要將該功能加到平臺應用中。

1 單個產品的試用權限

這里要做的是為每一個試用賬號在產品試用表中添加一條記錄,由于需要對試用賬號這個查詢結果集進行逐行處理,因此,需要使用一個游標來實現,具體如下:

……

DECLARE @trid INT

DECLARE @cp INT

DECLARE usr CURSOR FOR

SELECT

trial_id

FROM trialusr

OPEN usr

FETCH NEXT FROM usr INTO @trid

WHILE @@fetch_status = 0

BEGIN

SET @cp = X /* X為任意數字 */

BEGIN TRANSACTION;

INSERT INTO trialcp(trial_id,cp,start,end)

VALUES(@trid,@cp,GETDATE(),(GETDATE()+7))

COMMIT;

FETCH NEXT FROM usr INTO @trid

END

CLOSE usr

DEALLOCATE usr

……

2 單個產品類的試用權限

在這個需求中,有2個結果集,一個是試用賬號,另一個是產品類中的產品id,并且兩者都需要進行逐行處理,以實現一對一的關系,因此考慮使用2個游標,并且嵌套使用,具體如下:

……

DECLARE @trid INT

DECLARE @cpl varchar(50)

DECLARE @cp INT

SET @cpl=捪摯饕?1950~)?

DECLARE usr CURSOR FOR

SELECT

trial_id

FROM trialusr

OPEN usr

FETCH NEXT FROM usr INTO @trid

WHILE @@fetch_status = 0

BEGIN

BEGIN

DECLARE cur_cp CURSOR FOR

SELECT cpid

FROM cplist

WHERE cpl = @cpl

OPEN cur_cp

FETCH NEXT FROM cur_cp INTO @cp

WHILE @@fetch_status = 0

BEGIN

BEGIN TRANSACTION;

INSERT INTO trialcp(trial_id,cp,start,end)

VALUES(@trid,@cp,GETDATE(),(GETDATE()+7))

COMMIT;

FETCH NEXT FROM cur_cp INTO @cp

END

CLOSE cur_cp

DEALLOCATE cur_cp

FETCH NEXT FROM usr INTO @trid

END

CLOSE usr

DEALLOCATE usr

……

以上,是根據服務組提出的技術支持需求,形成的解決方案,在測試數據庫中測試及調試后,證實該方案可行,并準確實現了服務組的要求。

3 結語

關系數據庫中的操作會對整個行集起作用。由SELECT語句返回的行集包括滿足該語句的WHERE子句中條件的所有行。這種由語句返回的完整行集稱為結果集。應用程序,特別是交互式聯機應用程序,并不總能將整個結果集作為一個單元來有效地處理。這些應用程序需要一種機制以便每次處理一行或一部分行。游標就是提供這種機制的對結果集的一種擴展。[2]

本次技術支持任務中,嘗試了通過游標的使用,來實現批量數據的逐行處理。在數據處理的工作中,經常會遇到類似對數據集進行逐行處理的任務,希望本實例,可以為SQL的初學者提供參考。

參考文獻

[1] 《全國報刊索引》二次文獻共建共享網絡服務平臺數據庫資源介紹[EB/OL].http://www.cnbksy.com/shlib_tsdc/product/list.do.

[2] MSDN—Transact-SQL 參考:游標(數據庫引擎)[EB/OL].http://msdn.microsoft.com/zh-cn/library/ms191179(v=sql.105).aspx.endprint

摘 要:關系數據庫中的操作會對整個行集起作用,應用程序,特別是交互式聯機應用程序,并不總能將整個結果集作為一個單元來有效地處理。這些應用程序需要一種機制以便每次處理一行或一部分行。游標就是提供這種機制的對結果集的一種擴展。本文通過一個實例,介紹了SQL存儲過程中游標的使用。

關鍵詞:SQL游標 游標嵌套 試用權限

中圖分類號:TP311 文獻標識碼:A 文章編號:1672-3791(2014)04(c)-0026-02

二次文獻共建共享網絡服務平臺(以下簡稱平臺)是《全國報刊索引》編輯部一個網絡服務平臺,它利用現代化信息技術和服務手段,聯合海內外廣大圖情界同仁,在特色資源、近代文獻等珍貴文獻搶救和發掘方面合作共建,為廣大讀者用戶提供良好的信息參考和決策咨詢服務,也為海內外研究國學的人士獲取信息提供更多的便利。目前,《全國報刊索引》編輯部已擁有全文數據庫、索引數據庫、專題數據庫和特色資源數據庫四種類型數據庫。[1]

在平臺的運維工作中,經常會收到服務組提出的技術支持請求。有一次,為了配合數據庫產品的推廣活動,服務組希望技術部協助為一批試用用戶賬號開放產品試用權限。

平臺的文獻數據庫產品結構如圖1所示,分為三層:產品大類(如全文庫、索引庫等)、產品類(如晚清期刊全文數據庫(1833~1911)、民國時期期刊全文數據庫(1911~1949)等)、產品(如遐邇貫珍、點石齋畫報等)。這次收到的要求是,按不同需要分配產品權限:如單個產品的試用、單個產品類的試用。

按照慣例,類似這種臨時性的數據處理請求,以SQL存儲過程的方式來完成數據處理的相關任務,再根據實際需要,評估是否需要將該功能加到平臺應用中。

1 單個產品的試用權限

這里要做的是為每一個試用賬號在產品試用表中添加一條記錄,由于需要對試用賬號這個查詢結果集進行逐行處理,因此,需要使用一個游標來實現,具體如下:

……

DECLARE @trid INT

DECLARE @cp INT

DECLARE usr CURSOR FOR

SELECT

trial_id

FROM trialusr

OPEN usr

FETCH NEXT FROM usr INTO @trid

WHILE @@fetch_status = 0

BEGIN

SET @cp = X /* X為任意數字 */

BEGIN TRANSACTION;

INSERT INTO trialcp(trial_id,cp,start,end)

VALUES(@trid,@cp,GETDATE(),(GETDATE()+7))

COMMIT;

FETCH NEXT FROM usr INTO @trid

END

CLOSE usr

DEALLOCATE usr

……

2 單個產品類的試用權限

在這個需求中,有2個結果集,一個是試用賬號,另一個是產品類中的產品id,并且兩者都需要進行逐行處理,以實現一對一的關系,因此考慮使用2個游標,并且嵌套使用,具體如下:

……

DECLARE @trid INT

DECLARE @cpl varchar(50)

DECLARE @cp INT

SET @cpl=捪摯饕?1950~)?

DECLARE usr CURSOR FOR

SELECT

trial_id

FROM trialusr

OPEN usr

FETCH NEXT FROM usr INTO @trid

WHILE @@fetch_status = 0

BEGIN

BEGIN

DECLARE cur_cp CURSOR FOR

SELECT cpid

FROM cplist

WHERE cpl = @cpl

OPEN cur_cp

FETCH NEXT FROM cur_cp INTO @cp

WHILE @@fetch_status = 0

BEGIN

BEGIN TRANSACTION;

INSERT INTO trialcp(trial_id,cp,start,end)

VALUES(@trid,@cp,GETDATE(),(GETDATE()+7))

COMMIT;

FETCH NEXT FROM cur_cp INTO @cp

END

CLOSE cur_cp

DEALLOCATE cur_cp

FETCH NEXT FROM usr INTO @trid

END

CLOSE usr

DEALLOCATE usr

……

以上,是根據服務組提出的技術支持需求,形成的解決方案,在測試數據庫中測試及調試后,證實該方案可行,并準確實現了服務組的要求。

3 結語

關系數據庫中的操作會對整個行集起作用。由SELECT語句返回的行集包括滿足該語句的WHERE子句中條件的所有行。這種由語句返回的完整行集稱為結果集。應用程序,特別是交互式聯機應用程序,并不總能將整個結果集作為一個單元來有效地處理。這些應用程序需要一種機制以便每次處理一行或一部分行。游標就是提供這種機制的對結果集的一種擴展。[2]

本次技術支持任務中,嘗試了通過游標的使用,來實現批量數據的逐行處理。在數據處理的工作中,經常會遇到類似對數據集進行逐行處理的任務,希望本實例,可以為SQL的初學者提供參考。

參考文獻

[1] 《全國報刊索引》二次文獻共建共享網絡服務平臺數據庫資源介紹[EB/OL].http://www.cnbksy.com/shlib_tsdc/product/list.do.

[2] MSDN—Transact-SQL 參考:游標(數據庫引擎)[EB/OL].http://msdn.microsoft.com/zh-cn/library/ms191179(v=sql.105).aspx.endprint

主站蜘蛛池模板: 国产丝袜啪啪| 国产麻豆精品久久一二三| 亚洲无码精彩视频在线观看| 欧美日韩中文国产va另类| 国产成人免费| 欧美色香蕉| 日韩精品欧美国产在线| 成人福利一区二区视频在线| 久操中文在线| 日日拍夜夜操| 国产日韩久久久久无码精品| 亚洲高清在线播放| 漂亮人妻被中出中文字幕久久| 亚洲成a人片| 久久亚洲AⅤ无码精品午夜麻豆| 亚洲成a人在线播放www| 狼友视频国产精品首页| 国产乱子伦手机在线| 欧美精品亚洲精品日韩专| 亚洲精品在线影院| 欧美全免费aaaaaa特黄在线| 干中文字幕| 国产老女人精品免费视频| 毛片基地美国正在播放亚洲| 亚洲视频免费在线看| 日本午夜三级| 国产在线精品网址你懂的| 国产二级毛片| 亚洲av无码久久无遮挡| 丰满少妇αⅴ无码区| 国产精品美女免费视频大全| 久久五月视频| 亚洲熟妇AV日韩熟妇在线| 影音先锋丝袜制服| 四虎影视8848永久精品| 久久久久人妻一区精品色奶水| 国产你懂得| 国产精品第一区| 亚洲成人黄色在线| 一区二区三区四区日韩| 久久性视频| 亚洲香蕉伊综合在人在线| 亚洲精品无码不卡在线播放| 无码有码中文字幕| 成人毛片在线播放| 亚洲色图综合在线| 久久伊人操| 国产精品久久久精品三级| 亚洲欧美成aⅴ人在线观看| 三区在线视频| 国产日韩欧美在线播放| 色欲不卡无码一区二区| 国产成本人片免费a∨短片| 欧美日韩一区二区三| 亚洲精品视频在线观看视频| 99这里精品| 91国内外精品自在线播放| 福利视频一区| 亚洲av无码久久无遮挡| 国产午夜无码片在线观看网站| 国产成人精品一区二区秒拍1o| 成人午夜精品一级毛片| 麻豆精品在线| 国产精品久久久久久影院| 青青草综合网| 亚洲第一视频区| 亚洲AV电影不卡在线观看| 亚洲高清日韩heyzo| 精品无码一区二区在线观看| 国产精品太粉嫩高中在线观看| 波多野结衣第一页| 免费又黄又爽又猛大片午夜| 日本a级免费| 国产精品美女自慰喷水| 欧美中文字幕一区| 久久婷婷六月| 久久久久青草线综合超碰| 野花国产精品入口| 久视频免费精品6| 97成人在线视频| 亚洲熟女偷拍| 亚洲国产成人精品一二区|