然后你说的这个需求实现肯定可以实现
你可以想象一下 假如a数据库里有一个存储过程 那么它 *** 作的肯定是a数据库里面的表或其他的
那么你要是在b数据库执行a数据库的存储过程的话 如果能成功 那么调用的还是a数据库里面的内容 影响也是a数据库里面的内容
如果你硬要这样做 可以在a数据库的存储过程里的表 跨数据库 写a数据库里面的表 a..表名
这样不管是在哪个数据库执行 表面上是a的存储过程 但影响的是b
如果存储过程是查询的话 把这个查询插入到别的数据库的话 这个就任何一个数据库都可以实现 很方便 否则其他的内容 肯定不行 只有我说的这样去做
为什么不在需要用到的数据库创建存储过程呢 (这样性能方面也会好很多的 实际应用中 可能存在你这样的需求 但肯定很少 极少)
如果你是想把存储过程这些程序搬到另外一个数据库的话,那就直接把这些存储过程另存为SQL文本,然后在另外一个数据库重新建立就是了。如果你的意思是保持两个数据库数据的同步和一致,就可以考虑配置两个数据库之间的数据同步的一些方案,例如数据库复制、数据库数据文件的磁盘镜像等等技术方案,如果对高可用性HA要求非常高的系统,也可以考虑使用商业数据库系统的集群Cluster方案。
INSERT INTO DB2.TABLE_B SELECT * FROM(SELECT * FROM DB1.TABLE_A WHERE NOT EXISTS
(SELECT 1 FROM DB2.TABLE_B
WHERE DB1.TABLE_A.code = DB2.TABLE_B.code))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)