SQL server 数据库中dbo的含义

筅森魡賤 提交于 2020-03-30 04:04:25
  • question
SELECT * FROM [database].[dbo].[t_1] where xh not (SELECTxh FROM [database1].[dbo].[t_1])

 

  • df.

dbo是:每个数据库的默认用户,具有所有者权限,全称:datebaseOwner ,即DbOwner 。

所有者:在数据库中,新建对象时,默认对象的所有者为当前登录的账号。如果通过用dbo作为所有者来定义对象,能够使数据库中的任何用户引用而不必提供所有者名称;否则可能查不到表,存储过程等。

  • ex.

你以User1登录进去并建表Table,而未指定dbo, 当用户User2登进去想访问Table时就得知道这个Table是你User1建立的,要写上User1.Table,如果他不知道是你建的,则访问会有问题。 如果你建表时把所有者指给了dbo,则别的用户进来时写上Dbo.Table就行了,不必知道User1。 

不光表是如此,视图等数据库对象建立时也要如此才算是好。 所以在创建对象时,指定所有者为dbo,任何一个用户都可以引用。

建表、存储过程、视图等数据库对象时,其对应的所有者是创建它的用户。则除了该用户其他登录用户要引用这些东东时,都要加上前缀,很是麻烦。而且,程序因此易出错,你查来查去问题确出在这,浪费你时间。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!