今天下载了一套sql的网站系统,链接上数据库以后,总提示表不存在,于是打开数据库看了看,表示有的,真是奇怪了。仔细看了一下表的所有者,呵呵,这会看出不对的地方了,表的所有者是另外的一个用户,但是这个用户不是我的,是恢复这个数据库的时候带入的,所以也就是我这个用户没有权限读取这个表,于是我就找了一下如何修改表的所有。方法如下:

单个修改所有者sql语句如下:

查询分析器输入:EXEC sp_changeobjectowner 'user.table', 'dbo'

user.table的意思为:所有者.表名,比如oblog.oblog_user,以前的语句表示将table这张表的所有者由

user改成dbo

批量修改所有者语句如下:

查询分析器输入:exec sp_msforeachtable 'sp_changeobjectowner ''?'', ''dbo'''

即可把当面表的所有所有者换成dbo

03-14 08:23