Visual Basic - Store Procedure

Life is soft - evento anual de software empresarial
 
Vista:

Store Procedure

Publicado por jorge (202 intervenciones) el 04/10/2004 16:42:37
Cual es la mejor manera (que se ejecute mas rapido y que utilize menos recursos) de ejecutar una consulta creada en Access ?

esta? donde rs es un objecto recordset y CnBD un objecto connection

CONSULTA es el nombre de mi consulta que esta en la BD

Set rs = CnBD.Execute("select * from Consulta")
Do While Not rs.EOF
' utilizacion de datos
Loop

o esta ?

donde Cmd es un objecto Command, rs es un objecto recordset y CnBD un objecto connection

Set Cmd.ActiveConnection = CnBD
Cmd.CommandType = adStoredProc
Cmd.CommandText = "Consulta"
Set rs = Cmd.Execute

gracias por su atencion
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Store Procedure

Publicado por bla (230 intervenciones) el 11/10/2004 18:13:11
En este caso las dos maneras son igual de buenas (o igual de malas, según se vea).
La segunda forma es mucho mejor cuando la sentencia SQL tiene parámetros, es decir en lugar de ejecutar
CnBD.Execute("select * from consulta where id=3") y después ejecutar
CnBD.Execute("select * from consulta where id=5")
Es mejor crearse el comando
Cmd.CommandText = "select * from consulta where id=?"
y después ejecutarlo dos veces cambiando el valor del parámetro:
Cmd.Parameters("id").Value=3
set rs=Cmd.Execute
Cmd.Parameters("id").Value=5
set rs2=Cmd.Execute
Esto es mucho más rápido en Oracle y en SQL-Server.
En Access no creo que haya mucha diferencia, ya que access realmente es muy limitado y apenas está optimizado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar