当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 讲解SQL Server 2005数据库的同义词Bug

MSSQL
在SQL Server下数据库链接的使用
SQL Server数据库中处理空值时常见问题
巧用一条SQL语句实现其它进制到十进制转换
通过JDBC连接DB2数据库技巧
深入浅出SQL教程之嵌套SELECT语句
SQL Server备份文件中导入现存数据库
SQL多表格查询合并至单一声明的常用方式
也谈如何缩小SQL SERVER日志文件
四个语句帮你提高 SQL Server 的伸缩性
用JavaBean编写SQL Server数据库连接类
sql2k中新增加的Function的sqlbook 的帮助
Mssql处理孤立用户的存储过程
探讨SQL Server中Case 的不同用法
快速清除SQLServer日志的两种方法
解决Sql Server警报的疑难问题
MySQL的数据类型和建库策略
SQL SERVER应用问题解答13例(一)
SQL SERVER应用问题解答13例(二)
多种还原.bak数据库文件方式
SQL语句中的一些特殊参数如何用变量来代替

MSSQL 中的 讲解SQL Server 2005数据库的同义词Bug


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 109 ::
收藏到网摘: n/a

本文中我们将通过一个例子来介绍SQL Server 2005的一个Bug,首先,在建立同义词链接Oracle的时候,我们会使用下面的语句:

CREATE SYNONYM [dbo].mis_vendor FOR [TEST]..[MIS].MIS_VENDOR

此处建立好同义词后,刷新同义词,大家可以看到我们的同义词在ManegementStudio中了。这个时候查看他的属性可以看到架构变成了.MIS,显然这是不对的,我们使用“编写同义词脚本”->“Create到”->“新查询编辑器窗口”可以看到生成的代码:

CREATE SYNONYM [dbo].[mis_vendor] FOR [TEST].[.MIS].[MIS_VENDOR]

现在我们可以看到,它的确将MIS这个架构改成了.MIS 架构,方括号位置竟然不对了!

假如我们再用“编写同义词脚本”生成的语句来写同义词就会出错。所以希望大家以后写同义词最好使用SQL语句,不能过于相信MangementStudio所生成的代码。