日期:2014-05-18  浏览次数:20460 次

两个数据库之间做接口的提供方式
有两个系统 对应两个服务器上的两个数据库, 现在都要互相从对方取一些数据,
我想知道 一般来讲做接口的话有几种方式,如何控制权限?
比如可以告诉对方自己数据库的用户名密码 让对方调用一个写好的视图,这种应该是最简单的,
设置这个用户的权限, 来对自己进行保护,
还有没有其他的方式呢?

------解决方案--------------------
sqlserver 合并复制很简单
当然你要自己编程的话也可以,不过麻烦点 权限控制,同步失败等因素都要考虑进去
------解决方案--------------------
如果仅仅对部分表操作
也可以考虑做链接服务器

------解决方案--------------------
比如可以告诉对方自己数据库的用户名密码 让对方调用一个写好的视图,这种应该是最简单的,
设置这个用户的权限, 来对自己进行保护,
-------------------------------------------------------
这个方法最简单,也很好。通过指定用户可以访问视图或表的结构和数据。

二.1.编写一个存储工程,返回第三方需要查询的数据或增加第三方要新增的数据。
2.指定接口用户可且只可操作该过程

这样有个好处是第三方只能访问或操作数据,而不会知道表或视图的结构。
------解决方案--------------------
grant 授权到表或者列
------解决方案--------------------
探讨
比如可以告诉对方自己数据库的用户名密码 让对方调用一个写好的视图,这种应该是最简单的,
设置这个用户的权限, 来对自己进行保护,
-------------------------------------------------------
这个方法最简单,也很好。通过指定用户可以访问视图或表的结构和数据。

二.1.编写一个存储工程,返回第三方需要查询的数据或增加第三方要新增的数据。
……

------解决方案--------------------
如果都考虑安全性而要控制权限,可以鉴于产生中间数据,比如XML方式相互传输数据。
------解决方案--------------------
或者增加中间的接口库,该库的账户和密码对双方是透明的。
------解决方案--------------------
探讨
有两个系统 对应两个服务器上的两个数据库, 现在都要互相从对方取一些数据,
我想知道 一般来讲做接口的话有几种方式,如何控制权限?
比如可以告诉对方自己数据库的用户名密码 让对方调用一个写好的视图,这种应该是最简单的,
设置这个用户的权限, 来对自己进行保护,
还有没有其他的方式呢?