Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/08/2007, 08:03
tammander
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 8 meses
Puntos: 7
Re: expliquenme esta linea

El objeto Command de ADO te permite atacar bases de datos. La mayor diferencia con su hermano Recordset es que permite manipular sentencias SQL predefinidas con parámetros lo que lo hace mucho más cómodo para trabajar (ambos devuelven un Recordset, o sea, un conjunto de registros). Ademas, el mismo objeto abre y cierra la conexión con la BD según sus propias necesidades.

Un ejemplo es el siguiente: Imagínate que necesitas enviar varias consultas muy similares. Lo unico que cambian son los parámetros de seleccion.

set rs = conn.execute("SELECT nombre FROM tabla WHERE id = 23 AND ciudad = 4")
set rs = conn.execute("SELECT nombre FROM tabla WHERE id = 21 AND ciudad = 14")
set rs = conn.execute("SELECT nombre FROM tabla WHERE id = 135 AND ciudad = 46")
set rs = conn.execute("SELECT nombre FROM tabla WHERE id = 23 AND ciudad = 58")

Tendriamos que llamar a un recordset cada vez que necesites recuperar los datos. Con command simplemente cambias los parametros

set comm = server.CreateObject("ADODB.Command")
...
comm.commandText = "SELECT nombre FROM tabla WHERE id = ? AND ciudad = ?"

La primera ? es el primer parámetro, y asi sucesivamente

comm.parameters.append comm.createparameter("nombreOpcional1", 3, 1, 4, "33")
comm.parameters.append comm.createparameter("nombreOpcional2", 3, 1, 4, "44")


luego no hacemos mas que ejecutarlo:

comm.execute


¿Queremos usarlo otra vez? Pues solo tenemos que modificar los parametros

comm.parameters.append comm.createparameter("nombreOpcional1", 3, 1, 4, "51")
comm.parameters.append comm.createparameter("nombreOpcional2", 3, 1, 4, "98")

y volver a ejecutarlo

comm.execute

Los parámetros del método CreateParameter puedes verlos aqui. Basicamente son casi todos opcionales pero muy utiles para evitar sql injection y cosas indeseables:
Set parameterobject = commandobject.CreateParameter (Name, Type, Direction, Size, Value)

Name

Es opcional. Simplemente es para darle un nombre al parámetro.

Type

Opcional.Es el tipo de dato (integer, string, etc) que debe ser pasado. Por defecto es 0 (empty)

Direction

Opcional. Define la direccion del parámetro (si es de entrada o de salida). En nuestro ejemplo es de entrada ya que lo que definimos son los parámetros de la condición. Por defecto es 1 (entrada)

Size

Opcional. Tamaño del dato. Por ejemplo, si es Long y quieres definir su tamaño a 12. Por defecto es 0.

Value

El Valor del parametro.


El objeto y sus propiedades y métodos (en inglés)

http://www.w3schools.com/ado/ado_ref_command.asp

http://www.devguru.com/technologies/ado/8516.asp



Un saludo


--------

NOTA: Esto me pasa por explayarme :P
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -