无法作为数据库主体执行,因为主体 "dbo" 不存在、无法模拟这种类型的主体,或您没有所需的权限。 已将数据库上下文更改为

右键删除发布时报错信息:

其他信息:
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)
——————————
无法作为数据库主体执行,因为主体 "dbo" 不存在、无法模拟这种类型的主体,或您没有所需的权限。 已将数据库上下文更改为 ‘AdventureWorks2012‘。 (Microsoft SQL Server,错误: 15517)  有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&ProdVer=11.00.2100&EvtSrc=MSSQLServer&EvtID=15517&LinkId=20476

解决办法:

USE 出问题的库名;
EXEC sp_changedbowner ‘数据库系统管理员‘; 

查看数据库的所有者:

select owner_sid ,lo.sid, lo.name, lo.loginname ,db_name(database_id)
from master.sys.databases da
inner join  sys.syslogins lo on  da.owner_sid = lo.sid
时间: 2024-10-31 13:47:15

无法作为数据库主体执行,因为主体 "dbo" 不存在、无法模拟这种类型的主体,或您没有所需的权限。 已将数据库上下文更改为的相关文章

.net(C#)在Access数据库中执行sql脚本

自己写的一个工具类,主要是业务场景的需要. 主要有两个功能: ①执行包含sql语句的字符串 ②执行包含sql语句的文件 调用方式 1 /// <summary> 2 /// 执行sql语句 3 /// </summary> 4 /// <param name="sql">需要执行的sql语句</param> 5 public bool ExecuteSql(string sql, ref string errorMsg) 6 { 7 Se

SQL监控:mysql及mssql数据库SQL执行过程监控审计

最近生活有很大的一个变动,所以博客也搁置了很长一段时间没写,好像写博客已经成了习惯,搁置一段时间就有那么点危机感,心里总觉得不自在.所以从今天起还是要继续拾起墨笔(键盘),继续好好维护这个博客,写出心里最真实的想法,写出平时接触到的一些人和事以及一些新的技术.当然写博客也不是单纯的为了记录,也想通过博客来结交更多的朋友,今天在公司图书馆看到一句话大致说的是“在今天这个年代,已经很难等到三顾茅庐,诸葛亮也需要博客.微博和影响力”,在一年前就曾想过写一篇关于怎样通过博客来提高个人影响力的文章,我会尽

通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷

原文:通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷 通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷.效果如下: 步骤1:通过MyEclipse中的window->show View->other 调出.DB浏览器. 步骤2: 步骤3:输入db,然后选择DB Brower. 步骤4:单击空白处右键. 步骤5:选择相应的数据库类型. 步骤6: Driver name :填上自己需要的名字 Connection name :jdbc:

【SQLServer】“无法对数据库’XXX’ 执行删除,因为它正用于复制”的解决方法

警告: 一个或多个现有列的 ANSI_PADDING 设置为 "off",将以 ANSI_PADDING 为 "on" 的设置重新创建 [SQLServer]"无法对数据库'XXX' 执行删除,因为它正用于复制"的解决方法 USE masterEXEC sp_removedbreplication 'YDBS_MFQJ_HomeWorksBook'GO

通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷

通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷.效果如下:     步骤1:通过MyEclipse中的window->show View->other 调出.DB浏览器.   步骤2:     步骤3:输入db,然后选择DB Brower.   步骤4:单击空白处右键.     步骤5:选择相应的数据库类型.     步骤6: Driver name :填上自己需要的名字 Connection name :jdbc:mysql://localhost

SQLServer “无法对数据库&#39;XXX&#39; 执行删除,因为它正用于复制”的解决方法

“无法对数据库'XXX'执行删除,因为它正用于复制” 解决办法: 执行  sp_removedbreplication 'XXX' 这个语句的解释是:从数据库中删除所有复制对象,但不更新分发服务器上的数据.此存储过程在发布服务器的发布数据库或订阅服务器的订阅数据库上执行. 然后“任务--分离“ 或者 执行  DROP DATABASE XXX SQLServer "无法对数据库'XXX' 执行删除,因为它正用于复制"的解决方法 原文地址:https://www.cnblogs.com/

关于SQLServer无法对数据库&#39;XXX&#39;执行删除,因为它正用于复制

关于这个错误,是因为在服务器上想把数据库复制到本地,使用了“发布.订阅”方案,结果后来没成功,删除本地数据库的时候出现了这个错误,说“无法对数据库'XXX'执行删除,因为它正用于复制”. 解决方案:只需要执行 sp_removedbreplication [XXX] 就可以了. 这个语句的解释是:该存储过程在发布服务器的发布数据库中或在订阅服务器的订阅数据库中执行. 该过程将从执行它的数据库中删除所有复制对象,但它不会从其他数据库(例如,分发数据库)中删除对象. 详细解释请参考MSDN:http

在SQL Server数据库中执行存储过程很快,在c#中调用很慢的问题

记录工作中遇到的问题,分享出来: 原博客地址:https://blog.csdn.net/weixin_40782680/article/details/85038281 今天遇到一个比较郁闷的问题,如下图: 点击库存或者点击销售,查询数据很慢,有的将近几十秒,查询数据用的是存储过程,在数据库中执行存储过程,查询数据是很快的,速度非常理想,1秒不到,但是c#程序中调用就要很久. 百度了很多,后来这上面的那篇文章中找到了原因所在: 原因分析:由于存储过程是预编译的, 在第一次执行的时候, 会生成执

vue-electron 使用sqlite3数据库,执行npm run build 报错 .NET Framework 2.0 SDK,Microsoft Visual Studio 2005[C:\temp\wechat\node_modules\sqlite3\build\binding.sln]

问题描述 vue-electron 使用sqlite3数据库,执行npm run build 报错如下: .NET Framework 2.0 SDK,Microsoft Visual Studio 2005[C:\temp\wechat\node_modules\sqlite3\build\binding.sln]Failed to execute 'C:\Program Files (x86)\nodejs\node.exe C:\Program Files (x86)\nodejs\nod