新聞中心
以下的文章主要描述的是SQL Server數(shù)組參數(shù),以及對其實(shí)際操作的過程時碰到的相關(guān)問題的具體描述,在實(shí)際操作中我曾遇到過這樣的一個問題,需要在庫里處理N條數(shù)據(jù),不想在程序里循環(huán)造成多次訪問數(shù)據(jù)庫。

創(chuàng)新互聯(lián)建站長期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為邊壩企業(yè)提供專業(yè)的成都網(wǎng)站制作、成都做網(wǎng)站,邊壩網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
而SQL Sever又不支持SQL Server數(shù)組參數(shù),嘗試了兩種方法,在此做筆記如下(省略了單條數(shù)據(jù)的處理,用#temp是為了顯示結(jié)果)
1.利用replace create table #temp
- (
- ss varchar(200) not null
- )
- declare @str varchar(200)
- declare @result varchar(1000)
- set @str='aaa,bb,c,d,e,ffffff'
- set @result =' insert into #temp(ss) select '''+replace(@str,',','''union select''')+''''
- exec(@result)
- select * from #temp
2.利用charindex和substring
- create table #temp
- (
- ss varchar(200) not null
- )
- declare @str varchar(200)
- declare @curr int
- declare @prev int
- set @str='aaa,bb,c,d,e,ffffff'
- set @curr=1
- set @prev=1
- while @prev < len(@str)
- begin
- set @curr=charindex(',',@str,@prev)
- if @curr>@prev
- insert #temp select substring(@str,@prev,@curr-@prev)
- else
- begin
- insert #temp select substring(@str,@prev,len(@str)-@prev+1)
- break
- end
- set @prev=@curr+1
- end
- select * from #temp
以上的相關(guān)內(nèi)容就是對SQL Server數(shù)組參數(shù)的介紹,望你能有所收獲。
網(wǎng)站題目:SQLServer數(shù)組參數(shù)的執(zhí)行與問題
文章分享:http://www.5511xx.com/article/copgcec.html


咨詢
建站咨詢
