On 04.22.09, In Programacion, by Jorgelig
Como armar un insert multiple en MySQL con un for con VB
Hacer varios insert en la misma tabla usando un solo query nos podria ahorrar un poco de tiempo, el script basico seria este:
INSERT INTO x (a,b) VALUES ('1', 'one'), ('2', 'two'), ('3', 'three')
Para implementarlo en el codigo, seria usar algun Array o Collection en mi caso use varios Collection para armar el String del query con for, para VB seria algo asi:
Private colId_productos As New Collection Private colCantidades As New Collection Private colCostos As New Collection Private colPrecios As New Collection Dim strSQL As String = "INSERT INTO EntradaProducto VALUES " For i = 1 To colId_productos.Count If i < colId_productos.Count Then strSQL = [String].Concat(strSQL, "(LAST_INSERT_ID(),'" & colId_productos(i) & "'," & Me.colCantidades(i) & "," & Me.colCostos(i) & "," & Me.colPrecios(i) & "),") Else strSQL = [String].Concat(strSQL, "(LAST_INSERT_ID(),'" & colId_productos(i) & "'," & Me.colCantidades(i) & "," & Me.colCostos(i) & "," & Me.colPrecios(i) & ");") End If Next
Fuente | PeteFreiTag
No related posts.
Related posts brought to you by Yet Another Related Posts Plugin.

















2 Comentarios
Sería un rollo si no los hicieras así…. Esto que pones es lo más básico. ¿Intentas decir que para meter un insert solo pones un valor cada vez? Y después qué… ¿updates? ¿alter table? Lo veo ilógico pero allá tú…
@Oscar: No comprendi tu aporte, estas a favor?(“Sería un rollo si no los hicieras así” parece que si) o ¿estas en contra? (“Lo veo ilógico pero allá tú”); me gustaria saber la mejor alternativa que tienes tu, de eso se trata eso, aportala.