日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

SQLserver 2000分頁另類通用解決方案

系統(tǒng) 2212 0
?存儲過程分頁大都會用到這樣的語句
SELECT *,row_number() OVER(ORDER BY id DESC) AS rowNumber FROM
但是SQL2000 中不支持row_number() 需要使用 select ....into 配合臨時表和
IDENTITY (data_type [ , seed , increment ] ) AS column_name? 來作為替代方案。
語句像下面這樣
SELECT *,identity(int,1,1) as rowNumber INTO #temp FROM? Article
但是如果 Article中有標識列的話就會報錯。
無法使用 SELECT INTO 語句將標識列添加到表 ?? 該表的列 ?? 已繼承了標識屬性。
網(wǎng)上找到大多數(shù)解決方案都是需要顯示指定源表的列的列表。
一般是使用Convert(int,identity_columnName) 或者使用SET IDENTITY_INSERT指令
這樣雖然可以解決問題但是不夠通用,而且但源表主鍵列名未知的情況下就無能為力了。
經(jīng)過反復的百度和GOOGLE查閱相關(guān)資料后發(fā)現(xiàn)可以把上面的語句寫成下面這樣:
SELECT *,identity(int,1,1) as rowNumber INTO
#temp FROM (SELECT * FROM Article) AS newArticle
或則

SELECT T1.*,IDENTITY(INT,1,1)AS rowNumber INTO #temp FROM
?Article AS T1 JOIN Article AS T2 ON 1=2


這樣就不會報錯了。

?另外通過

INSERT INTO #temp exec('SELECT * FROM Product')

可以把動態(tài)構(gòu)造的SQL插入到#temp 中

SQLserver 2000分頁另類通用解決方案


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 皮山县| 庆云县| 益阳市| 正安县| 阳新县| 凌海市| 安吉县| 龙岩市| 福鼎市| 昌黎县| 南漳县| 靖宇县| 蒙自县| 金坛市| 石景山区| 秦安县| 金溪县| 韩城市| 江阴市| 华宁县| 黄骅市| 台安县| 南召县| 资中县| 镇远县| 长顺县| 枝江市| 江永县| 友谊县| 扬中市| 新河县| 车致| 临西县| 崇信县| 聊城市| 新和县| 兰考县| 岚皋县| 枣庄市| 轮台县| 鄂托克前旗|