我正在使用 SQLBulkCopy,在伪代码中我这样做:
- 制作新的员工数据表
- 制作新的 EmployeeAddress 数据表
- 填充员工表,但不指定employeeId 作为它的身份
- 填充 EmployeeAddress 数据表,但它包含一个 employeeId 字段
- 通过这样做两次并更改表名将两个数据表写入数据库:
.
using (var bulk = new SqlBulkCopy(connectionString, SqlBulkCopyOptions.KeepIdentity & SqlBulkCopyOptions.KeepNulls))
{
bulk.BatchSize = 25;
bulk.DestinationTableName = "Employee";
bulk.WriteToServer(employeeDataTable);
}
如何在第二个数据表中指定employeeId,以便它与第一次插入的员工正确对齐?我读取数据的方式是同时读取员工和地址,因此插入所有员工然后返回并插入所有地址有点痛苦。
我想知道是否有一个优雅的解决方案?