SqlServer同义词
最近在项目中遇到跨库操作具有相同表结构的数据表的问题。(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