SQL SERVER中[dbo]的解释
2024-09-06 07:25:19
1.作用:
(1)DBO是每个数据库的默认用户,具有所有者权限,即DbOwner;
通过用DBO作为所有者来定义对象,能够使数据库中的任何用户引用而不必提供所有者名称。
(2)至于为什么要使用所有者进行限定,是因为不同的用户可能创建同名的对象,例如登录名me和登录名you在pubs数据库中分别创建了用户名me,和 you,这二个用户都创建了
testtable这个同名表,而这二个表虽然同名但结构或数据可能完全不同,为了避免调用错误,必须使用所有者名称进行限定.
通过用DBO作为所有者来定义对象,能够使数据库中的任何用户引用而不必提供所有者名称。
(2)至于为什么要使用所有者进行限定,是因为不同的用户可能创建同名的对象,例如登录名me和登录名you在pubs数据库中分别创建了用户名me,和 you,这二个用户都创建了
testtable这个同名表,而这二个表虽然同名但结构或数据可能完全不同,为了避免调用错误,必须使用所有者名称进行限定.
2.举例:
比如:你以User1登录进去并建表Table,而未指定DBO,当用户User2登进去想访问Table时就得知道这个Table是你User1建立的,要写上User1.Table,如果他不知道是你建的,则访问会有问题。
如果你建表时把所有者指给了Dbo,则别的用户进来时写上Dbo.Table就行了,不必知道User1。
3.扩展:
怎样来调用别的用户创建的对象呢?例如me用户访问you用户创建的表或访问dbo创建的表.此种情况,必须同时满足二个条件:
(1)将me用户的数据库角色设置为db_owner,否则无法访问其他用户(包括dbo用户)创建的对象.(企业管理器-> 用户,右键菜单 <属性> 中设置)
(2)使用所有者进行限定.
例如me访问you创建的testtable:
select * from you.testtable
不光表是如此,视图等等数据库对象建立时也要如此才算是好。
最新文章
- 用U盘安装Ubuntu系统
- 在VS中添加lib库的三种方法
- java 本地目录文件删除 ***最爱那水货
- 一步一步搭建客服系统 (6) chrome桌面共享
- View (五)自定义View的实现方法
- Oracle锁表(转载)
- HDU 4571 Travel in time ★(2013 ACM/ICPC长沙邀请赛)
- magent编译安装及常见错误
- 启动网页时候自己主动载入servlet假设不使用strus最经常使用的两种方式
- retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1 SECONDS)
- 使用DateSet下载Excel
- Android View的事件分发
- jquery判断文本框输入的是非数字内容(交流QQ群:452892873)
- HTML基本结构与标签总结整理篇
- PHP 支持8种基本的数据类型
- 01:MongoDB基础
- [Errno&#160;256]&#160;No&#160;more&#160;mirrors&#160;to&#160;try 解决方法
- pThreads线程(三) 线程同步--条件变量
- 如何在Java 环境下使用 HTTP 协议收发 MQ 消息
- hdu 4996 1~n排列LIS值为k个数
热门文章
- python smtp发邮件报错“[Errno -2] Name or service not known”的解决
- 【datatable】正在加载中的信息提示
- 分组取前N记录(转)
- Python-UiAutomator2实现Android自动化测试
- 前端避免XSS(跨站脚本攻击)
- [NOIP模拟测试3] 建造游乐园 题解(欧拉图性质)
- 您应升级到 MySQL 5.5.0 或更高版本。 phpmyadmin
- TLS/SSL 协议 - Server Certificate
- 力扣算法题—111.Minimum Depth of Binary Tree
- python xlwt设置单元格的自定义背景颜色