最近在项目中遇到跨库操作具有相同表结构的数据表的问题。(A库中的数据表a和B库中的数据表b,两者表结构相同)

跨库操作中我们一般是为了实现不同数据库中表字段信息,字段状态等实时同步,可能很多人会想到使用触发器或者同步服务的方式,实现两个库中数据表的信息实时同步。

最近接触到了SqlServer自带的同义词,体验感很好,同时同义词的使用减去了我们同步信息的过程,由SqlServer自动帮你完成。注意:只有SqlServer2005及以后版本才支持同义词

那好,什么是同义词?

同义词:实际就是当前数据库对象指向另外一个数据库对象的别名。一般使用于跨数据库操作的场景。

支持创建同义词的数据库对象:数据表,视图,储存过程,同义词等。

语法格式:

创建:

1 CREATE SYNONYM '同义词名称'  
2 FOR '数据库'.'表名';  
3 GO 

 删除:

1 DROP SYNONYM '同义词名称'  

创建好同义词之后,我们即可在数据库中看到。

 

 

同义词的使用方式和正常操作数据库对象的方式一样。

比如:表的同义词使用方式

1 INSERT INTO aaa(Name)  
2 VALUES ('Test');  
3 GO 

 

USE tempdb;
GO
INSERT INTO MyAddressType (Name)
VALUES (‘Test’);
GO

版权声明:本文为chenxf1117原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/chenxf1117/p/12552204.html