萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> 數據庫綜合 >> SQL Server存儲過程詳解

SQL Server存儲過程詳解

歡迎大家在這裡學習SQL Server存儲過程!下面是我們給大家整理出來的精彩內容。希望大家在這裡學習!

declare @ptr varbinary(16)

declare @artId int

declare @Position int,@len int

set @len = datalength('老字符串')

declare wux_Cursor scroll Cursor

for

select textptr([字段名]),[key字段名] from [數據表名]

for read only

open wux_Cursor

fetch next from wux_Cursor into @ptr,@artId

while @@fetch_status=0

begin

select @Position=patindex('%老字符串%',[字段名]) from [數據表名] where [key字段名]=@artId

while @Position>0

begin

set @Position=@Position-1

updatetext [數據表名].[字段名] @ptr @Position @len '新字符串'

select @Position=patindex('%老字符串%',[字段名]) from [數據表名] where [key字段名]=@artId

end

fetch next from wux_Cursor into @ptr,@artId

end

close wux_cursor

deallocate wux_cursor

go

比如,替換iwms文章數據表(iwms_news)中的標題字段(content,ntext類型字段)的部分內容,我們應該這麼寫

declare @ptr varbinary(16)

declare @artId int

declare @Position int,@len int

set @len = datalength('老字符串')

declare wux_Cursor scroll Cursor

for

select textptr([content]),[articleid] from iwms_news

for read only

open wux_Cursor

fetch next from wux_Cursor into @ptr,@artId

while @@fetch_status=0

begin

select @Position=patindex('%老字符串%',[content]) from iwms_news where [articleid]=@artId

while @Position>0

begin

set @Position=@Position-1

updatetext iwms_news.[content] @ptr @Position @len '新字符串'

select @Position=patindex('%老字符串%',[content]) from iwms_news where [articleid]=@artId

end

fetch next from wux_Cursor into @ptr,@artId

end

close wux_cursor

deallocate wux_cursor

go

ok了,需要注意的是:存儲過程只能在SQL Server查詢分析器中執行。

另外,由於iwms數據庫結構的問題,有分頁的文章內容需要先後對iwms_news和iwms_pages兩個表內容進行替換操作。

好了,SQL Server存儲過程內容就給大家介紹到這裡了。希望大家繼續關注我們的網站!

相關推薦:

sqlserver使用窗口函數實現分頁的方法 

copyright © 萬盛學電腦網 all rights reserved