提问者:小点点

使用C#控制台应用程序将SqlServer表中的所有数据复制到postgreSql


如何使用像SQLBulkCopy这样的C#控制台应用程序将SqlServer表中的所有数据复制到postgreSql中?


共1个答案

匿名用户

我将使用SQL Server SSIS。这是Microsoft为在不同数据库和服务器之间进行迁移而创建的服务。下载PostgreSQL的ODBC驱动程序。

使用C#(不推荐)

Install-Package npgsql-version 5.0.1.1

安装程序包npgsql.bulk

C#连接到postgres数据库

 var context = new BulkContext("DefaultConnection");

 var data = Enumerable.Range(0, 100000)
     .Select((x, i) => new Address()
     {
         StreetName = streets[i % streets.Length],
         HouseNumber = i + 1,
         PostalCode = codes[i % codes.Length],
         ExtraHouseNumber = extraNumbers[i % extraNumbers.Length],
         Type = addressTypes[i % addressTypes.Length],
         Date = dates[i % dates.Length],
         Guid = guids[i % guids.Length],
         Dec = decimals[i % decimals.Length]
     }).ToList();

 var uploader = new NpgsqlBulkUploader(context);

ref:github-npgsql.bulk repo-npgsql.bulk.sampleRunner