Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Cómo ejecutar un Procedure SQL Server 2000 en Visual Basic 6.0

Estas en el tema de Cómo ejecutar un Procedure SQL Server 2000 en Visual Basic 6.0 en el foro de Visual Basic clásico en Foros del Web. Hola a todos! mi pregunta esta clara, quiero mandar a ejecutar un procedimiento almacenado que elabore en SQL Server 2000 desde un botón en Visual ...
  #1 (permalink)  
Antiguo 12/11/2003, 09:00
 
Fecha de Ingreso: noviembre-2003
Mensajes: 38
Antigüedad: 20 años, 5 meses
Puntos: 0
Pregunta Cómo ejecutar un Procedure SQL Server 2000 en Visual Basic 6.0

Hola a todos!
mi pregunta esta clara, quiero mandar a ejecutar un procedimiento almacenado que elabore en SQL Server 2000 desde un botón en Visual Basic 6.0.

Gracias de Antemano: Usecas
  #2 (permalink)  
Antiguo 12/11/2003, 09:58
 
Fecha de Ingreso: noviembre-2003
Mensajes: 38
Antigüedad: 20 años, 6 meses
Puntos: 0
Mira, tienes que usar un objeto ADO. Especificamente un ADODB.Command.

Como ejemplo, aqui te mando un código que encontré en MSDN

Fíjate que este ejemplo haces una conexión, creas parámetros para el sotre procedure y finalmente lo ejecutas con .execute.

Mira esto primero, si tienes más dudas, me mandas un correo electrónico. Con gusto te ayudo.



Dim objConn As ADODB.Connection
Dim objCmd As ADODB.Command

'--------------------------------------------------------------------
'--- Open the connection to the pubs database
'--------------------------------------------------------------------
Set objConn = New ADODB.Connection
objConn.Provider = "SQLOLEDB"
objConn.ConnectionString = "Provider=SQLOLEDB.1;Initial Catalog=pubs;Data Source=papanotebook;User ID=sa;Password="
objConn.Open

'--------------------------------------------------------------------
'--- Set the command object up to run the stored procedure
'--------------------------------------------------------------------
Set objCmd = New ADODB.Command
objCmd.CommandType = adCmdStoredProc
objCmd.CommandText = "prUpdateAuthor"
Set objCmd.ActiveConnection = objConn

'--------------------------------------------------------------------
'--- Create and add the parameters
'--------------------------------------------------------------------
objCmd.Parameters.Append objCmd.CreateParameter("@chvFirstName", adVarChar,
adParamInput, 20, "John")
objCmd.Parameters.Append objCmd.CreateParameter("@chvLastName", adVarChar,
adParamInput, 40, "White")
objCmd.Parameters.Append objCmd.CreateParameter("@chrPhone", adChar, adParamInput,
12, "408 496-7223")
objCmd.Parameters.Append objCmd.CreateParameter("@chvAddress", adVarChar,
adParamInput, 40, "10932 Bigge Rd.")
objCmd.Parameters.Append objCmd.CreateParameter("@chvCity", adVarChar,
adParamInput, 20, "Menlo Park")
objCmd.Parameters.Append objCmd.CreateParameter("@chrState", adChar, adParamInput,
2, "CA")
objCmd.Parameters.Append objCmd.CreateParameter("@chrZip", adChar, adParamInput,
5, "94025")
objCmd.Parameters.Append objCmd.CreateParameter("@bitContract", adBoolean,
adParamInput, , 1)
objCmd.Parameters.Append objCmd.CreateParameter("@chrID", adChar, adParamInput,
1, "172-32-1176")

'--------------------------------------------------------------------
'--- Execute the stored procedure
'--------------------------------------------------------------------
objCmd.Execute

objConn.Close
Set objCmd = Nothing
Set objConn = Nothing
'--------------------------------------------------------------------
  #3 (permalink)  
Antiguo 12/11/2003, 11:44
 
Fecha de Ingreso: noviembre-2003
Mensajes: 38
Antigüedad: 20 años, 5 meses
Puntos: 0
Gracias tomed por responderme.
Me sirvio lo que me respondistes, tenia uno parecido pero sin pasarle parametro.

Espero que sigamos compartiendo conocimientos!

Atte:Usecas
"Di Sí al Software Libre(GNU)" Managua,Nicaragua
  #4 (permalink)  
Antiguo 19/11/2003, 16:28
 
Fecha de Ingreso: agosto-2002
Ubicación: Santiago, CHILE
Mensajes: 25
Antigüedad: 21 años, 8 meses
Puntos: 0
Mira este es otro ejemplo que a mi juicio es mucho mas simple y tb. funciona para ASP o VB

acá vá

************************************************** **

Set dbConnection = Server.CreateObject("ADODB.Connection")
dbConnection.ConnectionTimeout = 1024
dbConnection.CommandTimeout = 1024
dbConnection.Open ("DSN=DSNTestFranco;UID=sa;PWD=;DATABASE=TestFranc o;APP=ASP script") 'Debe Existir en tu Pc (ODBC)

SQLQuery = "SELECT Nombre FROM Amigos Order by Nombre"
Response.Write "<br>" & SQLQuery
Set rsQuery = dbConnectionSQL.Execute(SQLQuery)

Do While Not(rsQuery.EOF)
Response.Write "<br>" & rsQuery("Nombre_Campo") 'para ASP
MsgBox rsQuery("Nombre_Campo") 'para Visual Vasic
MoveNext
Loop


Set dbConnection = Nothing
************************************************** **

Salu2
__________________
ATTE.
Franco A. Gomara G.
  #5 (permalink)  
Antiguo 20/11/2003, 07:54
 
Fecha de Ingreso: noviembre-2003
Mensajes: 1
Antigüedad: 20 años, 5 meses
Puntos: 0
Gracias lo que pasa es que cuando paso parametros y luego ejecuto mi procedimiento almacenado con execute no puede realizar varias operaciones como recorcount.
  #6 (permalink)  
Antiguo 20/04/2008, 17:44
 
Fecha de Ingreso: abril-2008
Mensajes: 2
Antigüedad: 16 años
Puntos: 0
Re: Cómo ejecutar un Procedure SQL Server 2000 en Visual Basic 6.0

Hola: quisiera saber como recupero un conjunto de filas en visual basic de un procedimiento almacenado con parametros en visual basic, los datos los envio al servidor sin problemas pero no los puedo recuperar, claro excepcionando los reportes q si salen pero quiero agregar esos registro a una lista
este es el codigo:

Private Sub cmdEjecutar_Click()
Dim rs As ADODB.Recordset
Dim cmdCab As ADODB.Command
Dim prmCab As ADODB.Parameter
Dim cdnValor As Variant
Set cmdCab = New ADODB.Command
cmdCab.CommandText = "pa_StockxAlmacen"
cmdCab.CommandType = adCmdStoredProc
cmdCab.ActiveConnection = cnAlmacen

Set prmCab = cmdCab.CreateParameter("codSuc", adInteger, adParamInput)
cmdCab.Parameters.Append prmCab
Set prmCab = cmdCab.CreateParameter("fechaIni", adDate, adParamInput)
cmdCab.Parameters.Append prmCab
Set prmCab = cmdCab.CreateParameter("FechaFin", adDate, adParamInput)
cmdCab.Parameters.Append prmCab

cmdCab.Parameters("codSuc") = Val(cbo_Almacen.ItemData(cbo_Almacen.ListIndex))
cmdCab.Parameters("FechaIni") = fecha1
cmdCab.Parameters("FechaFin") = fecha2
cmdCab.Execute
'***** hasta aqui funciona todo****
set rs=cmdcab.execute

For i = 1 To rs.RecordCount - 1
Grid1.TextMatrix(i, cod_detalle) = rs!CantIng
Grid1.Rows = Grid1.Rows + i
Next i
End Sub
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 00:59.