从sql读取和累积数据的更好方法

时间:2014-04-14 13:53:13

标签: c# sql datareader

我正在研究从sql用C#读取数据的一些可能性,我确信存在更好的方法。

我所拥有的是一个(相当复杂的)sql select语句,它返回3列。例如。人员ID,TaskID和HoursWorked

我想要做的是填充另一个包含2列的表,数据应该类似于:

COL1     |   COL2
---------------------
"John"   |   "Tsk01 (2 Hours), Tsk02 (7 Hours), Tsk03 (4 Hours)" 
"Peter"  |   "Tsk01 (4 Hours), Tsk03 (2 Hours), Tsk04 (3 Hours)"

所以,一个显而易见的方法是将我的sql语句放在一个数据读取器中(按人排序),遍历它,然后每次我找到一个新人时将数据写入我的第二个表。但这感觉很麻烦。必须有一个更简单的方法吗?

1 个答案:

答案 0 :(得分:3)

这很麻烦且效率很低。

这里有一些注意事项:

  • 不要违反数据库字段的atomicity。每个领域的一条信息。
  • 让数据库引擎在您将数据提取到代码中之前完成所有工作