我寫(xiě)給你
成都創(chuàng)新互聯(lián)公司為您提適合企業(yè)的網(wǎng)站設(shè)計(jì)?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強(qiáng)的網(wǎng)絡(luò)競(jìng)爭(zhēng)力!結(jié)合企業(yè)自身,進(jìn)行網(wǎng)站設(shè)計(jì)及把握,最后結(jié)合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè), 我們的網(wǎng)頁(yè)設(shè)計(jì)師為您提供的解決方案。
CREATE PROCEDURE xinwen
(@ID int)
AS
CREATE TABLE #t_Level(ID int,Level int)
DECLARE @Level int
BEGIN
SET @Level=1
INSERT t_Level SELECT @ID,@Level
WHILE @@ROWCOUNT0
BEGIN
SET @Level=@Level+1
INSERT t_Level SELECT a.ID,@Level
FROM 新聞表 a,t_Level b
WHERE a.prents=b.ID
AND b.Level=@Level-1
END
delete from 新聞表 where id in (select id from #t_Level)
END
GO
新聞表就是你那個(gè)表
不知道是哪行的問(wèn)題
可能是這個(gè)結(jié)果集是只能迭代一次的 不能用rs.beforeFirst()這個(gè)方法
也就是程序說(shuō)的只進(jìn)
你可以創(chuàng)建一個(gè)滾動(dòng)的結(jié)果集 把之前某行換成
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE)
我也是猜的 可以試一下~
如果需要向SQL Server批量導(dǎo)入數(shù)據(jù),根據(jù)導(dǎo)入的選項(xiàng)和表中的索引設(shè)置,數(shù)據(jù)導(dǎo)入的時(shí)間可能會(huì)在不同情況下相差甚遠(yuǎn)。如何能夠把批量導(dǎo)入的過(guò)程盡量少花時(shí)間呢?在這里我們將會(huì)介紹幾種不同的批量導(dǎo)入數(shù)據(jù)的方法、各種方法相應(yīng)的實(shí)例及其所需的時(shí)間長(zhǎng)短。
在我們的測(cè)試中我們采取了六種不同的數(shù)據(jù)導(dǎo)入方法:
1、表含有一個(gè)聚集索引(clustered index)和兩個(gè)非聚集索引(non-clustered index)
2、表只含有一個(gè)聚集索引
3、表不含有任何索引
4、表不含有任何索引并且有TABLOCK指示
5、表只含有一個(gè)聚集索引并且有TABLOCK指示
6、表含有一個(gè)聚集索引一個(gè)聚集索引并且有TABLOCK指示
另外,測(cè)試所用數(shù)據(jù)庫(kù)在測(cè)試前設(shè)置為批日志恢復(fù)模式。
這些測(cè)試中,每次迭代后數(shù)據(jù)庫(kù)和日志都會(huì)清理日志文件,而且實(shí)施每一個(gè)步驟之前都將表刪除,然后重新創(chuàng)建新表。
測(cè)試一
第一次運(yùn)行是使用一個(gè)含有121317行的數(shù)據(jù)集和一個(gè)空表。每次運(yùn)行之前都會(huì)重新創(chuàng)建符合測(cè)試的表。
如下圖結(jié)果所示,我們可以看出根據(jù)你用來(lái)導(dǎo)入數(shù)據(jù)的不同程序,運(yùn)行時(shí)間有所不同。
測(cè)試2
第二次運(yùn)行是使用一個(gè)含有242634行的數(shù)據(jù)集和一個(gè)空表。每次運(yùn)行之前都會(huì)重新創(chuàng)建符合測(cè)試的表。
我們可以看到這些運(yùn)行的時(shí)間有一些差別。
測(cè)試三
在這個(gè)測(cè)試中,我們運(yùn)行了兩個(gè)導(dǎo)入過(guò)程。第一次導(dǎo)入使用了一個(gè)含有121317行和一個(gè)空表,然后在同一個(gè)表中導(dǎo)入另外121317條記錄。每次運(yùn)行之前都會(huì)重新創(chuàng)建符合測(cè)試的表。
總結(jié)
我們可以從以上測(cè)試的結(jié)果看出,各種不同的條件會(huì)影響數(shù)據(jù)導(dǎo)入所用的時(shí)間。因此,如果想要更快地導(dǎo)入數(shù)據(jù),可以導(dǎo)入不含任何索引的表,在導(dǎo)入完成之后再建立索引。不過(guò)我們的測(cè)試中沒(méi)有檢測(cè)在導(dǎo)入完成后建立索引所需要的時(shí)間。
另外,還要注意確保你的數(shù)據(jù)和日志文件有足夠的空間來(lái)完成這個(gè)導(dǎo)入過(guò)程而不會(huì)導(dǎo)致文件自動(dòng)增長(zhǎng)。文件自動(dòng)增長(zhǎng)會(huì)極大地影響總導(dǎo)入的速度。
分享文章:sqlserver迭代,sqlserver迭代查詢(xún)
當(dāng)前URL:http://chinadenli.net/article24/dsshpce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、靜態(tài)網(wǎng)站、商城網(wǎng)站、品牌網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)