SQL SERVER 属性OWNER不可用于数据库xxx。该对象可能没有此属性,也可能是访问权限不足而无法检索。

 今天遇到一个案例:右键单击数据库的属性时出现下面错误提示:

        属性Owner不可用于数据库xxx,该对象可能没有此属性,也可能是访问权限不足而无法检索。

   使用脚本查看该数据库的Owner时发现Owner为null。具体原因是因为该数据库的Owner是一个系统管理员的账号,由于该同事离职,接手的系统管理员将该账号清除了,所以出现上面错误.此时用下面脚本查询,就会发现该Owner为null值。

SELECT  d.name ,
        owner_sid ,
        l.name
FROM    sys.databases d
        LEFT JOIN sys.syslogins l ON l.sid = d.owner_sid
WHERE d.name='DataBaseName';

只需要将数据库的Owner改为sa或其他sysadmin角色的账号即可.

USE DataBaseName;
GO         
EXEC sp_changedbowner 'sa';
GO
时间: 2024-12-09 23:49:04

SQL SERVER 属性OWNER不可用于数据库xxx。该对象可能没有此属性,也可能是访问权限不足而无法检索。的相关文章

SQL Server 2000/2005/2008/2008R2数据库修复技巧总结

1 .前言 本文的步骤基于以下条件: 1. SQL Server可以启动. 2. 数据库没有做有效的备份. 3. 当前用户有Sysadmin权限. 数据库质疑的原因会有多种多样,不同的suspect采用的步骤也会有所不同,以下的步骤不能适用所有的情况,但包括了一些基本的步骤. 数据库suspect是指数据库内部处于不一致的状态,很有可能会有数据丢失. 我们推荐您从"好的数据库备份"恢复. 我们这里所指的"好的数据库备份"是指: 1. 在做数据库备份之前,您检查过DB

如何使用SQL Server数据转换服务升迁Access数据库

本文详细介绍了如何使用SQL Server数据转换服务升迁Access数据库 开发者常常以Access作为原型或者用Access来开发不是很关键的应用程序.但是,随着公司业务的增长,要解决的问题会变得越来越复杂,Access环境可能无法满足需要.目前,Access 2002的.mdb和.adp文件都将一个数据库的长度限制在2 GB以内.这意味着几乎每个Access和SQL Server开发者最终都要将一个Access数据库升迁成一个SQL Server数据库. 由于升迁已成为极为常见的一个任务,

sql server实现在多个数据库间快速查询某个表信息的方法

本文实例讲述了sql server实现在多个数据库间快速查询某个表信息的方法.分享给大家供大家参考,具体如下: 最近出来实习,所在公司的服务器有十几个数据库,为了方便根据某个数据表的  表名  快速找到对应的数据库,又复习了一下游标的知识,写了下面这个sql代码,方便自己的工作. 1.先了解一下系统存储过程和系统表的使用,简单介绍一下我用到的几个系统存储过程(资料参考网络) use master --切换到系统数据库,因为下面用到的系统存储过程和系统表大部分存在于该数据库 go exec sp_

odbc- ODBC数据源用SQL Server连接没有自己建数据库

问题描述 ODBC数据源用SQL Server连接没有自己建数据库 ODBC数据源用SQL Server连接没有自己建数据库 解决方案 ODBC-C语言连接数据库(SQL Server 2000)(下)PHP中通过ODBC连接SQL Server数据库配置SQL Server的ODBC数据源

关于SQL Server 2005 的自动远程数据库备份

原文:(原创)关于SQL Server 2005 的自动远程数据库备份 由于项目需要,需要对目标服务器上的数据库每天进行备份并转移,查阅网上的一些帮助,结合自己的实际需要,写了这篇文章,希望对有同样需求的朋友有所帮助.目标服务器:192.168.1.197,备份服务器:192.168.0.194 1.在备份服务器上新建一个文件夹(我的是C:\DbBackupTest),首先要确定对备份服务器要有足够的权限(权限设置如下图所示),最好是"Administrators"组账户.其次 到备份

SQL SERVER统计服务器所有的数据库(数据库文件)、表(表行数)、字段(各字段)等详细信息

原文:SQL SERVER统计服务器所有的数据库(数据库文件).表(表行数).字段(各字段)等详细信息 USE STAT GO SET NOCOUNT ON IF EXISTS(SELECT 1 FROM SYS.TABLES WHERE TYPE='U' AND name='DBInfo') DROP TABLE DBInfo IF EXISTS(SELECT 1 FROM SYS.TABLES WHERE TYPE='U' AND name='ColumnsInfo') DROP TABLE

sql server 2012 备份集中的数据库备份与现有的xxx数据库不同_MsSql

SQL Server 2005备份的数据库还原到SQL Server 2012失败,错误信息如下: 解决方法 由于是还原完整数据库备份,因此删除SQL Server 2012同名数据库再还原,还原成功:  

sql server 2012 备份集中的数据库备份与现有的xxx数据库不同

SQL Server 2005备份的数据库还原到SQL Server 2012失败,错误信息如下: 解决方法 由于是还原完整数据库备份,因此删除SQL Server 2012同名数据库再还原,还原成功:

SQL Server 2008 master与msdb数据库的备份与恢复

  sql server 2005 & 2008 master与msdb数据库的备份与恢复,master与msdb数据库的备份与普通数据库一样,本文主要描述master与msdb数据库的恢复的一些个人积累. 恢复master与msdb数据库关键在于以单用户模式启动,其它并没有太大的区别. 由于系统数据库对Sql Server来说尤其重要,为了确保SQL SERVER系统的正常运行,除了日常备份用户的数据库之外,我们还需要备份系统数据库,如对Master,Model,Msdb(TempDB不需备份