代码之家  ›  专栏  ›  技术社区  ›  marc esher

是否可以在没有文件的情况下使用sql server大容量插入?

  •  8
  • marc esher  · 技术社区  · 14 年前

    好奇这是否可能:app服务器和db服务器住在不同的地方(显然)。应用程序服务器当前生成一个用于sql server大容量插入的文件。

    这要求数据库和应用服务器都能看到位置,这使得在不同的环境中进行配置更加困难。

    我想知道的是:在这种情况下是否可以绕过文件系统?或许我可以将数据传递到sql server并让它生成文件?

    我使用的是SQLServer2008,如果这有区别的话。

    2 回复  |  直到 14 年前
        1
  •  12
  •   Chris    14 年前

    我不认为用SQLServer的bulkcp工具可以做到这一点,但是如果你的应用程序是用.NET编写的,你可以使用System.Data.SqlClient客户端.SqlBulkCopy类从数据表(或可以使用SqlDataReader访问的任何数据源)大容量插入行。

        2
  •  1
  •   Sam    14 年前

    从批量插入的文档中:

    BULK INSERT 
       [ database_name. [ schema_name ] . | schema_name. ] [ table_name | view_name ] 
          FROM 'data_file' 
    

    包含要导入的数据的数据文件的完整路径 指定的表或视图。批量插入 网络、软盘、硬盘和

    从SQL server所在的服务器 文件,指定通用命名 约定(UNC)名称。UNC名称无效 形式 例如,