【发布时间】:2012-04-11 20:26:22
【问题描述】:
我“继承”了一些我很难处理的代码。该应用程序具有将成员导入成员表的excel导入功能,并使用SqlBulkCopy。
几个月前添加了一个联结表,并且必须在成员表中添加两个属性才能使应用程序正常工作。没有硬耦合(没有PK、FK——不是我的选择!)。
我不知道如何解决这个问题,因为据我所知你不能批量复制到两个表,你必须分开做。但是如何才能以最佳方式(对性能影响较小)检索新导入成员的 GUID 属性以及其他属性值(groupId)?
例子:
Excel 导入:
Name
Email
plus more
表 1
name
personID (GUID)
groupID (same for all imported members)
+ other attributes
表2
personID (GUID)
groupID (same for all imported members)
+ other 'new' attributes
对不起,我这次不能提供任何代码:/ 真的希望有人能给我任何建议!
【问题讨论】:
-
你是对的 - 你不能这样做,批量导入只能用于单个表。所以基本上这样做:(1)将您的数据批量导入“暂存”表 - 就像今天一样。然后 (2) 将该表从临时表拆分为两个实际表
-
你是如何以及从哪里得到
GroupID的???你到底在做什么?从“Excel 导入”插入Table1,然后您需要从该表中取回一些数据以插入Table2??您能否尝试从 Excel 导入中准确解释您在做什么?所有步骤,所有涉及的数据......
标签: sql sql-server-2005 sqlbulkcopy