我想知道是否有任何方法可以访问我的本地硬盘驱动器以使用BULK INSERT
或其他命令将数据从 CSV 文件插入到 SQL Server 数据库表中。
我以前用过BULK INSERT
,但为了使用它,我必须将 CSV 文件放在服务器的硬盘上,而不是我的本地硬盘上。我可以访问服务器所在计算机的硬盘。
这次我只有对 SQL Server 的读写访问权限,但对安装它的整台计算机没有访问权限。
有人对我如何做到这一点有任何建议吗?
我想知道是否有任何方法可以访问我的本地硬盘驱动器以使用BULK INSERT
或其他命令将数据从 CSV 文件插入到 SQL Server 数据库表中。
我以前用过BULK INSERT
,但为了使用它,我必须将 CSV 文件放在服务器的硬盘上,而不是我的本地硬盘上。我可以访问服务器所在计算机的硬盘。
这次我只有对 SQL Server 的读写访问权限,但对安装它的整台计算机没有访问权限。
有人对我如何做到这一点有任何建议吗?
如果要使用,BULK INSERT
则需要将文件放到 SQL Server 可以看到的位置(也许是文件共享)。或者BULK INSERT
在不同的服务器上执行,然后通过链接服务器、SSIS 等将数据移动到另一个 SQL Server。
当然,CSV 并不是一种复杂的处理格式——您可以通过简单的 C# 应用程序轻松地做到这一点,方法是将 CSV 分解为一组并使用表值参数或使用SqlBulkCopy。
我设法解决了我的问题。我在本地服务器上创建了一个临时数据库,并对本地临时表执行了“BULK INSERT”。然后我将我的本地服务器链接到我想要查询的服务器。最后,我在临时表(我批量插入数据的地方)和主数据库之间得到了我想要的内部连接。
请参阅此处了解如何创建数据库链接
另请参阅此问题的第一个答案,了解如何编写关于如何在两台服务器之间编写内部联接的内部联接语句。