
28/10/2004, 07:51
|
 | | | Fecha de Ingreso: septiembre-2004 Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 20 años, 7 meses Puntos: 2 | |
Problemas con Objeto Command y Parámetros Hola a todos!
Estoy en un conflicto bastante engorroso. Resulta que para el update a una tabla utilizo un objeto de comando, y como la tabla no es muy requerida y la mayoría de los datos puede no ingresarse (de hecho lel 90% de las veces no se ingresarán todos los campos de la tabla), entonces no puedo colocar simplemente las variables que recibo por post porque vienen muchas vacías, por esto mi opción fué el objeto de comando definido mas o menos de esta forma:
set cmUpClient = Server.CreateObject("ADODB.Command")
cmUpClient.ActiveConnection = MM_INFO_SQL_STRING
cmUpClient.CommandText="UPDATE CLIENTES SET COLUMNA="&VARIABLE&" WHERE (IDCLIENTE="&clien&")"
cmInsClient.CommandType = 1
cmInsClient.Prepared = true
cmInsClient.Execute
Pero de esta forma cuando llega una variable vacia, da error.
Entonces buscando en diferentes sitios llequé a w3school y traté de implementar esta solución:
cmUpdClient.CommandText=" UPDATE CLIENTES SET VARIABLE=? WHERE (IDCLIENTE="&clien&") "
Entonces tenía que colocar el valor de la variable de la siguiente forma:
CmUpItem.Parameters.Append CmUpItem.CreateParameter("VARIABLE", 4,1,100)
Con lo que también recibía errores al llevar variables vacías.
Lo que tengo ahora es lo siguiente:
set cmUpdClient = Server.CreateObject("ADODB.Command")
set objParm = Server.CreateObject ( "ADODB.Parameter" )
cmUpdClient.ActiveConnection = MM_INFO_SQL_STRING
cmUpdClient.CommandText=" UPDATE CLIENTES SET VARIABLE=?, WHERE (IDCLIENTE="&clien&") "
cmUpdClient.CommandType = 1
cmUpdClient.Prepared = true
' ------------------------- PARAMETROS PARA UPDATE ------------------
Set objParam =cmUpdClient.CreateParameter("PARAMETRO",200,1,100 , VARIABLE)
objParam.Attributes = 64 Que indica un campo "nulable"(que puede ser nulo)
cmUpdClient.Parameters.Append objParam
PARAMETRO Es el nombre del comando
VARIABLE es la variable que llegaba de la pag anterior.
¿Cuál es el error?????
Gracias de antemano!!! |