• hi there,

    your suggestions are all fine.

    bulk copy is always fast because it doesn't log (it is like saying it doesn't use the transaction log). so, if the issue is not rolling back from a heavy amount of inserts then sqlbulkcopy, bcp, etc is always an answer.

    datareaders are always faster than dataadapters with datasets, etc. so, if your issue is speed then datareaders are a solution, if they can be used in your solution.

    everything looks great, but i wanted to add that in the same way you send an update or "insert into" statements to a dataadapter with a command object, you can also send a stored procedure call, you attach the connection to the command object, plus the procedure and its parameters. later, you use this command object in your (maybe) fill method call of the dataadapter.

    i tested this procedure call with command and dataadapter objects for sql server and oracle, and i can guarantee it will give performance boost over a sql batch or dynamic sql (at least most of the time).

    best regards,

    tonko.