create procedure [dbo].[procgetdata]
( @days int
)
asbegin
-- set nocount on added to prevent extra result sets from
-- interfering with select statements.
set nocount on;
if @days is null
set @days=1000000
declare @sql nvarchar(2000);
set @sql = ' insert into tbcont select * from openquery([10.**.**.**],
''select * from [dbh].[dbo].viewtitle
where datediff(dd, modifydate, getdate()) <='
+ cast(@days as varchar(10)) +' '')';
exec sp_executesql @sql;
print @sql;
print 'step';
set @sql = 'select * into tbcon from openquery([10.**.**.**],
'' select t1.* from '
+ ' [dbh].[dbo].[viewdetail] t1 '
+ ' inner join [dbh].[dbo].[viewtitle] t2 '
+ ' on t1.id = t2.id'
+ ' and t1.versionid = t2.versionid '
+ ' where datediff(dd, t2.modifydate, getdate()) <= '
+ cast(@days as varchar(10)) + ' '')';
exec sp_executesql @sql;
begin transaction;
begin try
--delete from tbcont
--insert into [dbo].[tbcont
--update [dbo].[tbcont]
commit transaction;
end try
begin catch
rollback transaction;
end catch;
end
建立儲存過程
execute pro book 當你執行該儲存過程時,所有包括在其中的sql語句都會執行,在上面的例子中,會返回所有在forum表中的記錄。當在批處理中的第乙個語句是呼叫儲存過程時,你並不需要使用execute語句。你可以簡單地提供儲存過程的名稱來執行儲存過程。比如在isql w中,可以象下面所示...
建立儲存過程
在ms sql server 2000 中,建立乙個儲存過程有兩種方法 一種是使用transaction sql 命令create procedure,另一種是使用圖形化管理工具enterprise manager。用transaction sql 建立儲存過程是一種較為快速的方法,但對於初學者,使...
建立儲存過程
一.建立儲存過程 create procedure sp name begin end二.呼叫儲存過程 1.基本語法 call sp name 注意 儲存過程名稱後面必須加括號,哪怕該儲存過程沒有引數傳遞 三.刪除儲存過程 1.基本語法 drop procedure sp name 2.注意事項 1...