问题标签 [openrowset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
38834 浏览

sql-server-2008 - 如何使用openrowset执行带参数的存储过程

我正在创建一个存储过程,它获取一些参数,然后这些参数被发送到另一个我从 openrowset 调用的存储过程,但我遇到了一些语法错误。

我无法创建它,并且收到错误消息:

...但是如果我对参数使用硬编码值,它就可以工作!!

请帮忙!

0 投票
3 回答
19226 浏览

sql-server - 作为 CSV 导入操作的一部分,如何在一个步骤中创建和填充表?

我正在寻找一种快速而简单的方法来将 CSV 文件导入 SQL Server ,而无需事先创建表并定义其列

每个导入的 CSV 都将导入到自己的表中。

我们不关心数据类型推断。CSV 的结构和布局各不相同,它们都有很多列,但我们只关心其中的一小部分:街道地址和邮政编码。我们只想快速将 CSV 数据导入 SQL 数据库并提取相关列。

我想提供 FieldTerminator 和 RowTerminator,将其指向 CSV,然后让实用程序完成剩下的工作。有没有办法使用 BULK INSERT 和/或 OpenRowset(BULK ... ) 一步完成创建表并填充它?

0 投票
0 回答
1261 浏览

sql-server-2008 - 如何在视图中使用 OpenRowSet 调用带有#temp 的 SP?

我正在尝试从支持仅连接到表和视图的应用程序运行存储过程。我的解决方法是使用通过 Openrowset() 从 SP 获取结果的视图。结果表明,SP 使用#temp 表来存储中间结果,这是一个 DDL 操作,似乎不支持分布式查询。我可以用@temp 表变量替换#temp,但它会大大减慢整个代码的速度(我使用批量插入(从t1 中选择* 到#temp)来加快速度)。

我收到的错误消息是

无法处理对象“exec DW.dbo.TestSpWithTempTable”。链接服务器“(null)”的 OLE DB 提供程序“SQLNCLI10”表示该对象没有列,或者当前用户对该对象没有权限。

无论如何我可以在SP中使用#temp表并使用OpenRowSet从视图中调用它吗?

我创建的视图是:

有效但缓慢的代码是

0 投票
1 回答
3173 浏览

sql-server-2008 - 开放式与 BCP

我需要将数据从 Sql Server 2008 导出到 Excel/CSV 文件。

我有两个选择:

  • 开放集
  • BCP

如果数据量大且安全性受到关注,哪个会是更好的选择?

0 投票
1 回答
8756 浏览

sql-server - T-SQL,OPENROWSET 在同一服务器上的数据库之间复制表

我正在开发一些在 SQL 服务器之间传输数据的代码。在这个阶段,我所有的工作都在同一台服务器上(本地,我是所有者),但我已经在尝试实现将在生产时使用的 OPENROWSET 功能(数据将在不同的服务器上,我将不得不为转移建立查询)。以下 3 个代码应该做同样的事情,但是使用 OPENROWSET 的代码给了我一个错误...... Bref,我被卡住了!如果有人可以帮助...

3部分命名:作品

开放数据源:有效

开放式设置:不起作用

我在哪里收到以下消息:

当然,我尝试使用连接字符串的标准属性(与 OPENDATASOURCE 一样),但我也收到以下错误:

0 投票
3 回答
14935 浏览

sql - SQL SERVER 批量插入忽略变形的行

我必须导入 SAP 未转换列表。这些报告看起来很丑陋,不太适合自动化处理。然而,没有其他选择。数据以减号和竖线符号为界,类似于以下示例:

我使用格式文件和如下语句:

不幸的是,我收到以下错误代码:

拒绝 txt 文件包含文件的最后一行,其中只有减号。rejects.txt.Error.Txt 文件:

引发错误的罪魁祸首显然是最后一行不符合格式文件中声明的格式。然而,丑陋的标题不会引起太多问题(至少是最顶部的那个)。

尽管我定义了 maxerror 属性,但只有一条变形的线会杀死整个操作。如果我手动删除包含所有减号 (-) 的最后一行,一切正常。由于该导入将经常运行且特别无人看管,因此额外的后处理不是严肃的解决方案。

任何人都可以帮助我让 sql server 分别变得不那么挑剔和敏感。它记录了无法加载的行很好,但为什么它会中止整个操作?并且在执行导致创建 reject.txt 的语句之后,在手动删除 txt 文件之前不能执行其他(或相同)语句:

我认为这是一种奇怪的行为。请帮我压制它。

编辑 - 跟进: 这是我使用的格式文件:

0 投票
2 回答
3492 浏览

sql - BULK INSERT / OPENROWSET CSV 文件的格式文件终止符,数据中带有 ,(逗号)

我为我的百万行 CSV 编写了一个很好的导入,效果很好(使用 OPENROWSET BULK(我没有使用 BULK INSERT,因为我需要与其他一些列交叉连接)。格式文件使用逗号作为终止符。

这是我用来开发的 CSV 示例:

一旦我得到它的工作,有人提醒我数据本身可能有一个逗号,哎呀!!!!

人们如何使用 FormatFiles 处理数据中带有逗号的 CSV?(或者我只是说文件必须用TAB分隔)?

0 投票
2 回答
1576 浏览

sql - CSV FormatFile for OPENROWSET BULK 同时适用于普通 COMMA 和“COMMA”

可能重复:
SQL Server 批量插入带有不一致引号的 CSV 文件

我已经获得了一百万行 CSV 以导入到 SQL Server 中,基本上是这样的:

"A",B,C,D,"E","F"

过去,我使用 OPENROWSET BULK 和一个格式文件完成了它,该文件适合 CSV 文件,没有任何数据或所有带引号的列的引号。

人们通常会做什么来处理这样的 CSV 和 FormatFile,其中有些有引号而有些字段没有?

注意:我将与另一个表交叉连接,而不是从 CSV 导入所有数据,这就是我使用 OpenRowset Bulk 的原因(而且我也无权访问服务器上的 bcp)。

0 投票
1 回答
1405 浏览

sql-server-2005 - 无法从链接服务器中删除记录

在过去的两天里,我一直在到处寻找解决问题的方法,但没有任何运气。

我有这个从远程服务器删除记录的查询:

我收到了这个错误:

它还建议使用sp_addlinkedserver添加链接服务器。

一些注意事项:

  1. 这只发生在这台特定的计算机 + 远程服务器上。在 2 个不同的站点(计算机+服务器)上它工作得很好。
  2. 插入到 OpenRowSet 工作正常。
  3. 从 OpenRowSet 中选择 * 工作正常。=> 将删除更改为选择 * 工作正常。
  4. 在查询的计算机上启用了 Ad hok
  5. 通过 openrowset 查询的计算机上启用了远程连接
  6. 我可以 ping 服务器 (AB01S)

到目前为止,我已经尝试通过 GUI 和sp_addlinkserver.

0 投票
1 回答
777 浏览

c# - OPENROWSET BULK 行为和出错时缺少 ERRORFILE

我在使用 OPENROWSET BULK 时遇到了很大的困难

基本上,如果它尝试将 NULL 插入 NOT NULL 列,则会引发运行时错误。如果它试图将非数字插入到“int”中,则会引发运行时错误。如果我将 varchar(20) 放入 varchar(10) 中,则会引发运行时错误。这个名单还在继续......

我已经指定了一个错误文件,那么为什么不将行放入错误文件中?

如果这是正常行为,那么错误文件中的内容是什么?