[点晴永久免费OA]SQL Server中数据库表名前面的dbo.是什么意思?
当前位置:点晴教程→点晴OA办公管理信息系统
→『 经验分享&问题答疑 』
dbo 就是 Database Owner(即DbOwner,数据库的所有者)的缩写,DBO 是每个数据库的默认用户,具有所有者权限。
它是具有在数据库中执行所有活动的暗示性权限的用户。将固定服务器角色 sysadmin 的任何成员都映射到每个数据库内称为 dbo 的一个特殊用户上。
你具体对表操作的时候可以忽略它,不用管它,直接对你的表操作即可。通过用DBO作为所有者来定义对象,能够使数据库中的任何用户引用而不必提供所有者名称。
比如:你以User1登录进去并建表Table,而未指定DBO,当用户User2登进去想访问Table时就得知道这个Table是你User1建立的,要写上User1.Table,如果他不知道是你建的,则访问会有问题。如果你建表时把所有者指给了Dbo,则别的用户进来时写上Dbo.Table就行了,不必知道User1。
不光表是如此,视图等等数据库对象建立时也要如此才算是好。
建表、存储过程、视图等数据库对象时,其对应的所有者是创建它的用户。则除了该用户其他登录用户要引用这些东东时,都要加上前缀,很是麻烦。而且,程序因此易出错,你查来查去问题确出在这,浪费你时间。
另外,为了避免上述问题,在创建数据库表时,表名称中切勿使用符号“.”,否则可能会导致数据库表名称中“.”前面部分被错误识别为创建表用户,导致数据库表操作失败,由于事实上并不真实存在此用户,此时即使是sa管理员账号也会提示无权限操作。 该文章在 2020/8/12 1:14:05 编辑过
|
关键字查询
相关文章
正在查询... |