一个系统的数据库中的某个记录数据有了更新,怎样通过接口方式通知另一个系统(别人的)的数据库也做相应更新?(100分)

  • 主题发起人 主题发起人 labixiaoxin
  • 开始时间 开始时间
L

labixiaoxin

Unregistered / Unconfirmed
GUEST, unregistred user!
最近在做一个与酒店管理系统的接口,接口是这样的:在我的数据库中有多条记录,每个记录代表一个客房当前的客人的一些信息,而其中一个信息字段代表此客人当前选取的服务项目代码(通过房内的一个面板直接输入这个代码,我的数据库立即更新他选中的这个代码)。现在问题是我要做一个与酒店管理系统的接口,当客人选取代码,也就是我的数据库中这个房间记录的数据理新时,如何让酒店管理系统尽快得知这个更新即把这个更新传递给酒店管理系统呢?有没有哪位大哥做过类似与酒店管理系统的接口呢?谢谢。
 
用触发器
 
我也曾想过用触发器,但没想好我的数据库中的数据变化后,触发器触发后具体怎样通知酒店管理系统,而不是我直接去修改酒店管理系统的数据库。
 
触发器触发后具体怎样通知酒店管理系统,而不是我直接去修改酒店管理系统的数据库。<br><br>不明白你说的接口是咋工作的
 
接口是这样的: 我的数据有变化后,我的代码就给我的一个接口中间数据库A的数据进行更新,然后通知酒店管理系统我这个接口中间数据库有数据变化,叫酒店管理系统到这个接口中间数据库找更新过的数据,然后他再更新自已的数据库B
 
其实可以这样做,写两边<br>/* &nbsp;if &nbsp; exists(select &nbsp; 1 &nbsp; from &nbsp; master..sysservers &nbsp; where &nbsp; srvname='srv_lnk') &nbsp; &nbsp; <br>&nbsp; exec &nbsp; sp_dropserver &nbsp; 'srv_lnk','droplogins' &nbsp;*/ &nbsp; <br>&nbsp; go &nbsp; &nbsp; <br>exec &nbsp; sp_addlinkedserver &nbsp; &nbsp; 'srv_lnk','','SQLOLEDB','DATASERVER' &nbsp; <br>&nbsp; exec &nbsp; sp_addlinkedsrvlogin &nbsp; 'srv_lnk','false',null,'usrName','pwd' &nbsp; <br>&nbsp; go &nbsp; <br>&nbsp; &nbsp; <br>&nbsp; --查询示例 &nbsp; <br>&nbsp; select * into dbo.mz_patient &nbsp; from &nbsp; srv_lnk.dbname.dbo.tblname<br>可以把select换成update就行,直接操作远程数据库
 
想问一下有谁知道比如电话计费与酒店管理系统的接口是怎样的,它怎样把电话拔入拔出的信息即时通知酒店管理系统的?
 
有猫来通讯地。
 
楼主,你的东西该不会和那个酒店管理系统完全独立吧?<br>你不改数据库,就得该程序啊.<br>如果数据库不改,光一个接口就可以解决另个完全独立的系统的数据更新,也太神奇了<br>偶学习
 
我的系统的确和酒店管理系统是完全独立的,所以要做接口。现在目的是我的程序改了我的一个中间数据库,就得通知酒店管理系统去更新它的数据库
 
楼主的程序修改中间数据库,并触发一个通知,这个相信很简单,但你却没法控制别人的程序让它响应你的通知。想自动的也就只有触发器修改对方数据库。想手动那就先导出数据然后让对方程序手工导入,我想手动是没有人会接受的。
 
多人接受答案了。
 
后退
顶部