我已经在sql server 2005中创建了一个存储过程,用于将数据从查询导出到网络路径。用户是sql用户,也是在AD中创建的。我登录的服务器是一个远程服务器,具有sysadmin权限。在执行过程甚至查询时,我遇到了以下错误:
output
SQLState = 08001, NativeError = 53
Error = [Microsoft][SQL Native Client]Named Pipes Provider: Could not open a connection to SQL Server [53].
SQLState = 08001, NativeError = 53
首先,我对甲骨文几乎一无所知。我处理Server已经很多年了,所以我对SQL很熟悉。
我有一个模式(我认为它相当于Server中的数据库?)它下面有桌子。我知道桌子是存在的。我从server连接到它们,并看到表和数据。我能够在SQLPlus和SQLPlus中使用ALTER SESSION SET CURRENT_SCHEMA MySchema命令访问这些表。
现在,当我试图查询这些表时,我得到了ORA-00942: table or view does not exist 00942. 00000 - "table or view does not exist"。
我登录了系
我有两个与链接服务器连接的SQL服务器2016。当我从远程服务器查询sys.dm_exec_describe_first_result_set时,它返回列表而不是十进制的数字数据类型。
第一个查询(从远程服务器执行)
select * from sys.dm_exec_describe_first_result_set (N'select top 1 * from LinkedServerFoo.DatabaseFoo.dbo.TargetTable', NULL, 0) [source]
第二个查询(从sql服务器执行)
select * from sys.dm_exec_d
我使用SQL Server Management Studio中的SQL身份验证(非sa用户)连接到数据库。当我执行以下查询时,我得到“访问远程服务器被拒绝,因为不存在登录映射”。
EXEC OPENDATASOURCE('SQLNCLI','Server=MyServer;Trusted_Connection=yes;').Database.dbo.myStoredProcedure
如果我以sa身份连接到SQL Server Management Studio,则执行查询时不会出现任何错误。
如何在SQL身份验证下以非sa用户身份连接到sql Server
我找到了代码的样本:
SELECT * FROM [legacyserver].[database].[schema].[table]
有人表示:
SELECT * FROM [legacyserver]...[table]
但不是为我工作。
它给了我一个错误:
为链接服务器"legacyserver“的提供程序"MSDASQL”指定了无效的架构或目录。
我使用的是遗留服务器SQL server 2000和新服务器SQL SERVER 2012。
我尝试使用以下方法创建链接服务器:
EXEC sp_addlinkedserver
@server = 'l
我有一个本地SQL Server 2008R2。我已将链接服务器配置为远程数据库。
当我使用具有sysadmin服务器角色的SQL登录帐户登录到本地服务器时,链接服务器工作得很好。我可以对远程服务器进行查询,因此我知道链接服务器设置是正确的。但是,如果我使用的帐户没有sysadmin服务器角色,则会收到以下错误。
Msg 7416, Level 16, State 2, Line 2
Access to the remote server is denied because no login-mapping exists.
对于本地和远程服务器,都使用SQL登录(不使用Windows身份验证)
我已经在SQL 2012和SQL 2008R2上的实例之间设置了链接服务器,但在尝试在远程服务器上执行存储过程时,我一直收到以下错误:
Msg 7201, Level 17, State 4, Line 1
Could not execute procedure on remote server 'TEST' because SQL Server is not configured for remote access. Ask your system administrator to reconfigure SQL Server to allow remote access.
将应用程序从SQL Server 2012迁移到SQL Server 2017。
我对数据导入运行以下两个查询(Name是包含非英语字母的varchar列)。
select Name from RemoteServer.RemoteDB.dbo.RemoteView
select coalesce(Name,'') from RemoteServer.RemoteDB.dbo.RemoteView
在SQL 2012上,结果是相同的。在SQL 2017中,我看到了以下内容:
原因是什么?
不幸的是,我不能将远程服务器上的数据类型更改为nvarchar。
更新:更多信息
我正在Azure SQL数据库上执行一个存储过程。
正在通过本地Server实例上的Server代理作业通过链接服务器调用该过程:
EXEC ('EXEC azuredb.dbo.FullProcess') AT [MYAZURESERVER.DATABASE.WINDOWS.NET]
执行约12分钟后,我将得到一个查询超时错误:
OLE DB provider "SQLNCLI11" for linked server "MYAZURESERVER.DATABASE.WINDOWS.NET" returned message "Quer
我想知道为什么在本地调试和实时远程站点调试时AJAX请求之间存在200ms+上的差异。
我有两个场景:
1. browser - local IIS Express - remote SQL server
2. browser - remote IIS Server - remote SQL server
场景#2 IIS服务器连接本地网络(192.168.1.*)上的SQL服务器,所以这应该是完全没有问题的。
Scenario #1, Firebug AJAX response around 78ms for all requests I have done
Scenario #2, F