SqlServer使用触发器 同步mysql

SqlServer使用触发器 同步mysql,第1张

SqlServer使用触发器 同步mysql SqlServer使用触发器 同步mysql

SqlServer使用触发器 同步mysql。


文章目录
  • SqlServer使用触发器 同步mysql
  • 一、触发器>>>存储过程>>>python接口
      • 1.创建表
      • 2.创建触发器
      • 3.存储过程
  • 二、触发器>>>python
      • 1.创建表
      • 2.创建触发器
      • 3.python


# 前言 一、触发器>>>存储过程>>>python接口 1.创建
CREATE TABLE [dbo].[test_b] (
  [id] varchar(64) COLLATE Chinese_PRC_CI_AS  NOT NULL,
  [name] varchar(255) COLLATE Chinese_PRC_CI_AS  NULL
)
2.创建触发器
--创建insert触发器
create trigger trig_insert
on test
after insert
as
begin
		declare @id as varchar(64)
		declare @name as varchar(255)
		select @id=id,@name=name from inserted
		exec dbo.test_trigger @id,@name --dbo.test_trigger 是存储过程得名称 后面是变量
end

查询触发器

select * from sysobjects where xtype='TR'

删除触发器

drop trigger trig_insert
3.存储过程
CREATE PROCEDURE dbo.test_trigger
	@id varchar(64),
	@name varchar(255)
AS 
	declare @http_url as varchar(1000)

	declare @P1 varchar(64),@P2 varchar(255)
	set @P1 = 'id'
	set @P2 = 'name'

	declare @P1_Value varchar(64),@P2_Value varchar(255)
	set @P1_Value = @id
	set @P2_Value = @name

	--api接口地址不要用127.0.0.1
	set @http_url = 'http://192.168.1.177:8850/api/infer/save_test/?app_channel=web&' + @P1 + '=' + @P1_Value +'&' + @P2 + '=' + @P2_Value
										
	Declare @Object as Int
	Declare @hr as Int
	Declare @ResponseText as Varchar(8000)

										
	Exec @hr = sp_OACreate 'MSXML2.XMLHTTP', @Object OUT
	Exec @hr = sp_OAMethod @Object, 'open', NULL, 'GET',@http_url,'false'
	Exec @hr = sp_OAMethod @Object, 'send'
	Exec @hr = sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT

	IF @hr <> 0
	BEGIN
		 EXEC sp_OAGetErrorInfo @object  
		 select @Object             --输出异常信息
	END
	Select @ResponseText    --打印返回结果
	Exec sp_OADestroy @Object
GO

查询存储过程

select * from sysobjects where xtype='P' 
二、触发器>>>python

触发器把新增得数据存到中间表,python脚本每分钟取一次

1.创建表
CREATE TABLE [dbo].[test_b] (
  [id] varchar(64) COLLATE Chinese_PRC_CI_AS  NOT NULL,
  [name] varchar(255) COLLATE Chinese_PRC_CI_AS  NULL
)
2.创建触发器
--创建insert触发器
create trigger trig_insert
on test
after insert
as
begin
		insert into test_copy select * from INSERTED; 
end

查询触发器

select * from sysobjects where xtype='TR'

删除触发器

drop trigger trig_insert
3.python

python 连接sqlserver 每分钟扫一次表,并删除数据

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5071798.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存