sql server service broker中调用存储过程执行跨库操作,不管怎么设置都一直提示 服务器主体 "sa" 无法在当前安全上下文下访问数据库 "dbname"。
用sql server自带的消息队列service borker,调用存储过程中,执行了一个跨库的操作,先是用了一个用户,权限什么都给够了,但是一直提示 服务器主体 "user" 无法在当前安全上下文下访问数据库 "dbname"。
想着是架构方面的问题,换sa还是不行。查到微软的一篇文章 提示需要开数据库的 ALTER DATABASE current_db SET TRUSTWORTHY ON
我把跨的那个库设置了还是不行。最后自己写测试代码,代码如下:
create database test1 create database test2 use test2
create table t_1 (id int ,ddate date )
insert into t_1 (id,ddate) values(1,GETDATE()) use test1 create proc p_test
WITH EXECUTE AS OWNER
as
begin
select GETDATE()
select * from test2..t_1
end exec p_test ALTER DATABASE test1 SET TRUSTWORTHY on
ALTER DATABASE test2 SET TRUSTWORTHY ON
两个库都 SET TRUSTWORTHY on 却可以了。。。。。。折腾了一天时间。。。。。。。。。。
EXECUTE AS OWNER 设置会话的执行上下文。队列里去不掉,要解决有两个方法 ,上面是方法其一,其二是用证书。。。。。。。
SELECT name, database_id, is_trustworthy_on FROM sys.databases
授权用户访问,命令如下:
ALTER AUTHORIZATION ON DATABASE::数据库名 TO [用户名]
sql server service broker中调用存储过程执行跨库操作,不管怎么设置都一直提示 服务器主体 "sa" 无法在当前安全上下文下访问数据库 "dbname"。的更多相关文章
- 在Windows Server 2008 R2 Server中,连接其他服务器的数据库遇到“未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持。如果希望使用通知,请为此数据库启用 Service Broker ”
项目代码和数据库部署在不同的Windows Server 2008 R2 Server中,错误日志显示如下: "未启用当前数据库的 SQL Server Service Broker,因此查 ...
- SQL Server Service Broker 简单例子 (转)
SQL Server Service Broker服务体系结构 消息类型 — 定义应用程序间交换的消息的名称.还可以选择是否验证消息.约定 — 指定给定会话中的消息方向和消息类型.队列 — 存储消息. ...
- SQL Server Service Broker创建单个数据库会话
概述 SQL Server Service Broker 用来创建用于交换消息的会话.消息在目标和发起方这两个端点之间进行交换.消息用于传输数据和触发消息收到时的处理过程.目标和发起方既可以在同一数据 ...
- SQL Server Service Broker创建单个数据库会话(消息队列)
概述 SQL Server Service Broker 用来创建用于交换消息的会话.消息在目标和发起方这两个端点之间进行交换.消息用于传输数据和触发消息收到时的处理过程.目标和发起方既可以在同一数据 ...
- SQL问题:未启用当前数据库的 SQL Server Service Broker
数据库分离后,附加回到数据库,然后在程序中打开调用数据库的页面,出现如下问题:“未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持.如果希望使用通知,请为此数 ...
- The SQL Server Service Broker for the current database is not enabled
把一个数据恢复至另一个服务器上,出现了一个异常: The SQL Server Service Broker for the current database is not enabled, and ...
- sql server Service Broker 相关查询
sql server Service Broker 相关查询 -- 查看传输队列中的消息 --如果尝试从队列中移除时,列将表明哪里出现了问题 select * from sys.transmissio ...
- SQL Server Service Broker(简称SSB)资料
SQL server Service Broker (下面简称SSB) 是SQL server 里面比较独特的一个功能.它可帮助开发人员构建异步的松散耦合应用程序.SSB的一些功能和好处包括有: 数据 ...
- Reusing dialogs with a dialog pool--一个sql server service broker例子
一个sql server service broker例子 ----------------------------------- USE master GO -------------------- ...
随机推荐
- 使用Gulp和Browserify创建多个绑定文件
Browserify是一个Javascript的绑定工具,帮助我们理顺module之间的依赖关系.Gulp用来优化workflow.两者的共同点都是使用流,但在使用流方面也有不同之处: Browser ...
- 在IE7下使用angularjs(转)
在我的环境中,主要支持的浏览器为:ie7, ie8, ie9, chrome等.在试验angularjs时,发现在ie7环境下运行有问题,于是在网上搜了一下相关的内容,说HTML标签的写法要这样: & ...
- MySQL 学习用employee数据库表参考使用
download place:https://launchpad.net/test-db/ ,choose this file from the right panel:employees_db-fu ...
- java 获取某个URL的文件扩展名的方法(非精确,精确的扩展名应该使用服务器返回的MIME-TYPE)
public static String getFileExtension(URL extUrl) { //URL: "http://photosaaaaa.net/photos-ak-sn ...
- Mac OSX - 如何在bash_profile中配置全局环境变量
我们知道,在Linux操作系统下,配置环境变量是使用如下命令: vim /etc/profile 在OSX下,我们用如下命令打开环境变量配置文件: open ~/.bash_profile 典型的环境 ...
- 最近的shell脚本(updating)
1.批量替换 sed -i 's/class="table"/class="table table-hover"/g' `grep 'class="t ...
- AndroidStudio小技巧--依赖库
同步发表于http://avenwu.net/2015/02/12/androidstudio_library_dependency Fork on github https://github.com ...
- X509证书中RSA公钥的提取与载入
原文链接: http://blog.chinaunix.net/uid-16515626-id-2741894.html 由于项目需要,我计划利用openssl开发一个基本的CA,实现证书的发放等 ...
- windbg常用命令
SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols CPU常用命令 载入sos.dll 执行.load C:\Windows\Micr ...
- Equals Finalize GetHashCode GetType MemberwiseClone ReferenceEquals ToString String.IsInterned
参考资料: http://blog.csdn.net/afgasdg/article/details/6889383 http://www.cnblogs.com/skyivben/archive/2 ...