欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
通過(guò)作業(yè),定時(shí)同步兩個(gè)數據庫

通過(guò)作業(yè),定時(shí)同步兩個(gè)數據庫

[日期:2005-07-08]來(lái)源:CSDN  作者:[字體: ]


--定時(shí)同步服務(wù)器上的數據

--例子:
--測試環(huán)境,SQL Server2000,遠程服務(wù)器名:xz,用戶(hù)名為:sa,無(wú)密碼,測試數據庫:test
--服務(wù)器上的表(查詢(xún)分析器連接到服務(wù)器上創(chuàng )建)
create table [user](id int primary key,number varchar(4),name varchar(10))
go
--以下在局域網(wǎng)(本機操作)
--本機的表,state說(shuō)明:null 表示新增記錄,1 表示修改過(guò)的記錄,0 表示無(wú)變化的記錄
if exists (select * from dbo.sysobjects where id = object_id(N‘[user]‘) and OBJECTPROPERTY(id, N‘IsUserTable‘) = 1)
 drop table [user]
GO
create table [user](id int identity(1,1),number varchar(4),name varchar(10),state bit)
go
--創(chuàng )建觸發(fā)器,維護state字段的值
create trigger t_state on [user]
after update
as
update [user] set state=1
from [user] a join inserted b on a.id=b.id
where a.state is not null
go

--為了方便同步處理,創(chuàng )建鏈接服務(wù)器到要同步的服務(wù)器
--這里的遠程服務(wù)器名為:xz,用戶(hù)名為:sa,無(wú)密碼
if exists(select 1 from master..sysservers where srvname=‘srv_lnk‘)
 exec sp_dropserver ‘srv_lnk‘,‘droplogins‘
go
exec sp_addlinkedserver  ‘srv_lnk‘,‘‘,‘SQLOLEDB‘,‘xz‘
exec sp_addlinkedsrvlogin ‘srv_lnk‘,‘false‘,null,‘sa‘
go

--創(chuàng )建同步處理的存儲過(guò)程
if exists (select * from dbo.sysobjects where id = object_id(N‘[dbo].[p_synchro]‘) and OBJECTPROPERTY(id, N‘IsProcedure‘) = 1)
 drop procedure [dbo].[p_synchro]
GO
create proc p_synchro
as
--set  XACT_ABORT on
--啟動(dòng)遠程服務(wù)器的MSDTC服務(wù)
--exec master..xp_cmdshell ‘isql /S"xz" /U"sa" /P"" /q"exec master..xp_cmdshell ‘‘net start msdtc‘‘,no_output"‘,no_output

--啟動(dòng)本機的MSDTC服務(wù)
--exec master..xp_cmdshell ‘net start msdtc‘,no_output

--進(jìn)行分布事務(wù)處理,如果表用標識列做主鍵,用下面的方法
--BEGIN DISTRIBUTED TRANSACTION
 --同步刪除的數據
 delete from srv_lnk.test.dbo.[user]
  where id not in(select id from [user])

 --同步新增的數據
 insert into srv_lnk.test.dbo.[user]
 select id,number,name from [user] where state is null
 
 --同步修改的數據
 update srv_lnk.test.dbo.[user] set
  number=b.number,name=b.name
 from srv_lnk.test.dbo.[user] a
  join [user] b on a.id=b.id
 where b.state=1
 
 --同步后更新本機的標志
 update [user] set state=0 where isnull(state,1)=1
--COMMIT TRAN
go

--創(chuàng )建作業(yè),定時(shí)執行數據同步的存儲過(guò)程
if exists(SELECT 1 from msdb..sysjobs where name=‘數據處理‘)
 EXECUTE msdb.dbo.sp_delete_job @job_name=‘數據處理‘
exec msdb..sp_add_job @job_name=‘數據處理‘

--創(chuàng )建作業(yè)步驟
declare @sql varchar(800),@dbname varchar(250)
select @sql=‘exec p_synchro‘   --數據處理的命令
 ,@dbname=db_name()   --執行數據處理的數據庫名

exec msdb..sp_add_jobstep @job_name=‘數據處理‘,
 @step_name = ‘數據同步‘,
 @subsystem = ‘TSQL‘,
 @database_name=@dbname,
    @command = @sql,
 @retry_attempts = 5,   --重試次數
 @retry_interval = 5    --重試間隔

--創(chuàng )建調度
EXEC msdb..sp_add_jobschedule @job_name = ‘數據處理‘,
 @name = ‘時(shí)間安排‘,
 @freq_type = 4,     --每天
 @freq_interval = 1,    --每天執行一次
 @active_start_time = 00000  --0點(diǎn)執行
go

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
SQL Server使用存儲過(guò)程+事務(wù)+游標跨庫將一個(gè)表中的數據導出到另一服務(wù)器的兩個(gè)數據庫表中
Sql Server數據庫實(shí)現跨庫跨服務(wù)器查詢(xún)的方法
數據庫異庫操作(SQL2000)_數據庫開(kāi)發(fā)_web應用開(kāi)發(fā) - snow_xp的日志 -...
(轉)跨服務(wù)器查詢(xún)數據庫
SQL Server中創(chuàng )建鏈接服務(wù)器進(jìn)行跨服務(wù)器查詢(xún)
sqlserver通過(guò)腳本創(chuàng )建定時(shí)任務(wù)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久