From an architecture and maintenance standpoint I would not put an insert statement into InfoPath. Since you have SQL Server, it would be best if you created a stored procedure in SQL Server. Then write a web service that will call the stored procedure. Then have your InfoPath form call the web service. The advantages are:
1 - You will decouple your UI layer (InfoPath) from the database layer.
2 - You have now created a re-useable service that can perform the same insert from other applications.
3 - If the insert needs to be changed, the change will be isolated to the stored procedure and the InfoPath form will not have to be re-published (decoupled).
4 - If your insert stored procedure needs to be re-written to connect to a different technology, Oracle or Access, only the web service would have to change and again InfoPath would not be affected (decoupled).
5 - As you mentioned, you want to do multiple insert statements, you can create a transaction within your web service to commit all of the insert statements or none either using ADO.NET or Transact SQL.
The development time to put together a simple stored proc and web service to call the stored proc is quick and has high impact.
Jason
http://www.k2distillery.com/