来自不同服务器的BULK INSERT

时间:2017-12-03 08:10:28

标签: sql sql-server tsql

我在SQL Server 2012中使用T-SQL。

这是我的问题:我在服务器10.10.10.1上有一个文本文件。我想在上一个文本文件的服务器10.10.10.2上创建一个临时表。

根据我的研究,BULK INSERT适用于本地C:目录。

有没有办法做到以下几点?

BULK INSERT dbo.#G2
FROM '10.10.10.1.C:\File\textfile.txt'
WITH
(
  CODEPAGE = '1252',
  FIELDTERMINATOR = ';',
  CHECK_CONSTRAINTS
)

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您可以从文件共享(\\computer\share\folder\file中读取数据,但 SQL Server进程必须具有访问权限。由于SQL Server通常作为本地服务帐户运行,因此它只能访问允许匿名访问的共享(因此任何人都可以阅读共享内容)。

最好上传到服务器上的文件夹,但这当然意味着从数据库服务器共享可写文件夹。虽然可控(例如专用分区,受控ACL)但仍然不理想。