You can write a multi row insert like this:
INSERT INTO MyTable (field list...)
SELECT fieldlist... FROM MyOtherTable
This will add all the SELECTed rows to the table. Of course, this requires that the data already exists in another table.
Although I have never tried, I assume the same behavior applies when you use the execution of a SPROC as the "SELECT" source instead of a regular SELECT statement.
You want to add multiple records from data generated by the application, the only solution is to call an insert or sproc repeatedly. You could use a DataTable and DataAdapter to execute the update of the data (updating changed records and/or inserting new ones) but internally, I imagine this just calls the InsertCommand repeatedly.
Ultimately, there is no syntax in T-SQL that permits the passing of a row array to a single insert command apart from those described above.
-
Peter