Cita:
Iniciado por Uialwen Mmmm creo que ahora te entiendo mejor, pero el objeto hay que instanciarlo y no sé si todos los parámetros son del mismo tipo y que nombres les das en el procedimiento almacenado pero puedes intentar algo así si son del mismo tipo:
Public Sub Grabar()
Dim sarray() As String = {"p1", "p2", "p3", "p4", "p5", "p6", "p10"}
'Dim arrParams() As SqlParameter
conexion = conector.abrirconexion(servidor, baseDatos, seguridadIntegrada)
Dim comandoSQL As New SqlCommand (conexion)
comandoSQL.CommandType = Data.CommandType.StoredProcedure
Dim i As Integer = 0
For Each str As String In sarray
comandoSQL.Parameters.Add(String.Concat("@", "p", i), SqlDbType.NVarChar)
comandoSQL.Parameters(String.Concat("@", "p", i)).Value = str(i)
i += 1
Next
comandoSQL.ExecuteNonQuery()
conexion.Close()
End Sub
Saludos
siiii lo entendii gracias pero dos preguntas mas para terminar este temaa :
1) el "str" lo as declaro en el mimos feach cierto?
2)necesariamente tengo que darle tipo de variable al parametrooo?????' no podria mandarle slo su valor??
algo como asi :
Public Sub Grabar()
Dim sarray() As String = {"p1", "p2", "p3", "p4", "p5", "p6", "p10"}
'Dim arrParams() As SqlParameter
conexion = conector.abrirconexion(servidor, baseDatos, seguridadIntegrada)
Dim comandoSQL As New SqlCommand (conexion)
comandoSQL.CommandType = Data.CommandType.StoredProcedure
Dim i As Integer = 0
For Each str As String In sarray
comandoSQL.Parameters(String.Concat("@", "p", i)).Value = str(i)
i += 1
Next
comandoSQL.ExecuteNonQuery()
conexion.Close()
End Sub
guardar de frente el value sin declarar esto : " comandoSQL.Parameters.Add(String.Concat("@", "p", i), SqlDbType.NVarChar)
"
ya que mi procedimiento tiene entre variables varchar,integer ???? habria la posibilidad que las mande todas como varchar() y en la misma base de datos me valide o como puedo tratar esoo ?? porfaaa