为何在object_id()函数中,不认服务器名呢?下面写就不行,假如服务器名为:dbserver
数据为名为 northwindselect *
from dbserver.northwind.dbo.syscolumns
where id=object_id('dbserver.northwind.dbo.orders')
order by colid
但是下面省略服务器名就可以,为什么呢?
select *
from dbserver.northwind.dbo.syscolumns
where id=object_id('.northwind.dbo.orders')
order by colid
我不明白的是,在
from 后面的 dbserver.northwind.dbo.syscolumns 可以识别,但是在
object_id()中的 dbserver.northwind.dbo.syscolumns 就无法识别
而改成 .northwind.dbo.syscolumns ,即省略了服务器名,就可以识别了,为什么呢?数据库表名的引用规则就是:
服务器名.数据库名.所有者名.表名
呀,难道这个规则在 object_id()中不适用吗?