Tag: 链接服务器

使用SQL帐户时无法连接到链接服务器(Excel文件)

计划 让人力资源部门的人员将工资职位的Excel文件转储到networking共享中,将该文件作为SSMS中的链接服务器添加,并在ASP.Netnetworking表单中使用这些标题。 使用链接服务器而不是导入数据以允许HR自行决定更新作业标题文件。 问题 我可以创build链接服务器,并查询它没有问题,只要我在SSMS与Windows身份validation。 但是,如果我尝试使用SQL帐户访问链接的服务器,我首先得到错误: 访问远程服务器被拒绝,因为没有login映射存在(错误7416) 正在使用的SQL帐户是我的网页表单用于其他所有帐户的相同帐户。 这个SQL帐号没有文件权限的事实并不令人惊讶,因此对链接服务器安全性的调整应该是有用的。 问题(第二部分) 为了减lessvariables的数量,我移动了Excel文件,使其与我的SQL Server在同一台机器上。 我login到计算机并使用我的域pipe理员帐户login到SSMS。 我访问链接服务器的安全选项卡,并试图build立尽可能最广泛的networking,我将本地login名(顶部)留空并直接转到“使用此安全上下文:”并继续提供我的域pipe理员凭据。 我点击确定,我得到以下内容: 不是有效的帐户名称或密码(错误7399) 我知道帐户名称和密码是好的,所以给了什么? 其他事情 曾经遇到类似事情的人们被指示更改用于SQL Server服务的login帐户,我已经使用域pipe理员帐户(用于疑难解答,atm)完成login帐户。 这并没有解决这个问题。 这就是链接服务器代码的样子,虽然我通过GUI创build它(为了完整起见,包括在内): EXEC master.dbo.sp_addlinkedserver @server = N'ADP_TITLES', @srvproduct=N'', @provider=N'Microsoft.ACE.OLEDB.12.0', @datasrc=N'C:\JOB_TITLE_EXPORT.xlsx', @provstr=N'Excel 12.0 Xml' EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'ADP_TITLES',@useself=N'False',@locallogin=NULL,@rmtuser=N'DOMAIN\username',@rmtpassword='########'

更新链接的服务器SQL Server

我正在尝试创build一个围绕我的天气设备构build的天气数据库。 现在,天气将数据每小时更新一次到excel电子表格。 我已经完成了Excel工作表中数据的初始导入并创build了一个链接服务器。 我现在要做的是创build一个更新语句来从Excel工作表中检索新的数据。 我想这样做,更新语句每天自动运行一次。 链接的服务器名称是weatherdata ,Excel文件名称是acuriteweatherdatabase2具有许多不同的列名称。 我已经在网上查找,并尝试了许多选项,但回来了各种错误消息。 什么是完成这个任务的最好方法?

SQL链接服务器与Excel导入值为NULL

我已成功地使用链接的服务器与SQL Server Management Studio从Excel导入文件有四列。 Excel文档看起来像(没有工具是指空白单元格,第6-199行) TDS HOLDER TOOL 1 3 1187 2 4 09812 3 5 9082 4 2 —- 5 76 —- 6 9 7 1 . . . . . . 200 18 CT-2989 201 98 CT-9871 当我按原样导入时,它将抓取包含——单元格的顶部的单元格,然后当它到达空白的单元格时,它将为其余的数据打印NULL ,这是不正确的。 当我改变我的Excel文档,使“CT”值在最上面时,它将获取第3列中所有正确的CT和TL值。

OPENROWSET或OPENDATASOURCE在远程服务器的文件系统上从.xlsx或.csv文件获取数据的示例

大量的例子展示了如何使用OPENROWSET和OPENDATASOURCE打开对远程SQL服务器上的表的查询,并从其他服务器上的文件中获取数据。 不幸的是,他们没有一个告诉我如何做我需要做的具体的事情,这是使用这些命令之一来获得一个.csv或.xlsx Excel文件从远程服务器使用服务器的IP地址和Windowslogin的地方服务器没有安装SQL Server实例 – 只有IIS7或8。 如果微软文档没有忽略如何以最可能的方式使用他们的工具的基本例子,那将是非常好的。 尝试40多种不同的参数列表组合,并不需要真正的智能:这只是一种低效的浪费时间。 开发人员有更重要的事情要做,而不是浪费时间来发现一些“秘密知识”的秘诀,这个秘诀实际上只是一个没有正确logging的命令参数变体,并假装这是聪明的事情。 因此,为了减轻我的哲学焦虑,有人可以提供一个例子,说明如何使用OPENROWSET或OPENDATASOURCE从.csv文件或Excel电子表格中使用远程服务器IP地址XXX.XXX.XXX.XXX获取/select内容,一个端口号(如果应该包括的话),文件系统path正确地附加到命令或包含在命令中,以及正确安排用户名和密码参数。 远程服务器上没有SQL服务器实例 – 只有IIS和带有Windows身份validation的网站。 如果你有一个在远程服务器上与SQL服务器实例一起工作的例子,那么这样做(尽pipe我认为REMOTEDATASOURCE的一些例子已经包含了这个例子),但是我真的想要一个例子,我不必拥有一个SQL服务器实例在远程Web服务器上。 我知道你可以使用链接服务器,但有一些额外的行李放在远程服务器上,包含要访问的文件,在我的情况下,包含excel或.csv文本文件的服务器甚至没有SQL Server它的实例 – 只有IIS和一个网站。 (另外 – 有人可以确认您是否可以使用所需的文本数据文件在远程服务器上使用没有SQL Server或其他数据库服务器实例的链接服务器?是仅链接数据库服务器还是链接服务器,远程服务器可以只是一个窗口和Web服务器上没有安装SQL服务器?) 这个例子很方便,但是不告诉我SERVERPROPERTY('MachineName') AS nvarchar(128))可以包含一个没有SQL服务器实例的远程windows服务器的IP地址,而不是访问文本文件。 这个例子很接近,但在post里似乎没有一个积极的结果,也没有涉及到文本文件 – 只有一个数据库查询,所以远程系统安装了SQL服务器? SELECT * FROM OPENROWSET('PACISOleDb', '192.168.200.172';'admin';'admin', 'SELECT * FROM DB') 现有的例子是好的,但没有多大帮助: SELECT * FROM OPENROWSET('SQLNCLI', 'DRIVER={SQL Server};SERVER=YourServer;UID=UserID;PWD=Password', 'select * from sys.sysobjects') ( 来源 ) SELECT ContactName, CompanyName, ContactTitle […]

从Excel中selectMicrosoft.ACE.OLEDB.12.0文本截断错误

我已经GOOGLE了整个宇宙,但没有成功。 当我运行查询时出现以下错误: OLE DB provider 'Microsoft.ACE.OLEDB.12.0' for linked server '(null)' returned truncated data for column '[Microsoft.ACE.OLEDB.12.0].Short Description'. The actual data length is 540 and truncated data length is 510. 实际的数据长度从510以上到1700多不等。我已经在registry中将TypeGuessRow设置更改为'0',我已经按提到的列长度排列了excel行,但仍然不好。 这是我的查询: insert into SRC_REMEDY_RAW select * from openrowset ('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=D:\ReleaseTeam_db\data\data_src.xlsx;HDR=YES;IMEX=1', 'select * from [Murex – SW Business Application$]') where [Ticket ID] is not null […]

在OPENQUERY中使用UNION子句用VBA查询Oracle Linked Server

我相当新的SQL和VBA。 我正尝试使用VBA中的OPENQUERY执行以下Oracle SQL查询来查询链接服务器: with untagged_affiliates as ( select ife.entityid, 'Untagged affiliate' as TYPE_CHANGE, to_number( case when IFE.OLDVALUE is not null then EXTRACTVALUE(xmltype(IFE.OLDVALUE), '/DocumentElement/ORG_AFFILIATIONS/AFFILIATED_ORGID') else null end) as RELATED_ID, ife.analystuserid as ANALYST, ife.auditdatetime from ife.audittrail ife where IFE.ATTRIBUTEID = 314 and ife.newvalue is null and ife.oldvalue is not null and ife.AUDITDATETIME between TO_DATE('27/11/2016 00:00:00','dd/mm/yyyy hh24:mi:ss') and […]