Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:

Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro


ERROR DE SINTAXIS EN LA INSTRUCCIÓN UPDATE

Aqui programadores en la plataforma Win32 con Visual C++ de Microsoft...

Moderador: latindeveloper

ERROR DE SINTAXIS EN LA INSTRUCCIÓN UPDATE

Notapor atp el Dom Dic 16, 2007 9:08 am

Hola de nuevo, tengo el siguiente problema:

Estoy realizando un proyecto con VC++, aplicación basada en diálogos y tengo que hacer un UPDATE en la base de datos;

la base de datos es access, uso odbc, tengo la tabla "identificadores" y la clase CRidentificadores.

Entonces, en el punto donde tnego que hacer la actualización pongo:

sql.Empty();
sql.Format("%sUPDATE identificadores SET desc = '%s', date = '%s' WHERE id = '%s'",sql,identificador_desc,identificador_fecha,identificador);
MessageBox(sql);
theApp.m_pConexion->ExecuteSQL(sql);

Yo antes había hecho esta operación ya varias veces, pero ahora me sale el siguiente error:

ERROR DE SINTAXIS EN LA INSTRUCCIÓN UPTATE

Ah, otra cosa, todos los campos son TEXTO y el messagebox muestra lo que se supone que debe estar bien:

UPDATE identificadores SET desc='descripción', date = '12-12-90' WHERE id='vacio'


Lo he revisado varias veces y lo veo bien, no se donde puede estar el error.

Saludos y gracias de antemano
atp
Usuario Muy Activo
Usuario Muy Activo
 
Mensajes: 126
Registrado: Mar Ene 03, 2006 3:52 pm

Re: ERROR DE SINTAXIS EN LA INSTRUCCIÓN UPDATE

Notapor ivancp el Dom Dic 16, 2007 11:37 am

Creo que la linea:

Código: Seleccionar todo
sql.Format("%sUPDATE identificadores SET desc = '%s', date = '%s' WHERE id = '%s'",sql,identificador_desc,identificador_fecha,identificador);

Debes reemplazarla por:

Código: Seleccionar todo
sql.Format("UPDATE identificadores SET desc = '%s', date = '%s' WHERE id = '%s'",identificador_desc,identificador_fecha,identificador);
ivancp
Programador Experimentado
Programador Experimentado
 
Mensajes: 301
Registrado: Jue Sep 06, 2007 12:57 pm

se obtiene el mismo resultado

Notapor atp el Dom Dic 16, 2007 12:18 pm

Hola, gracias por la respuesta, pero se obtiene el mismo resultado, el messagebox(sql) produce la misma respuesta.

Segurié investigando a ver que puede fallar.

Saludos.
atp
Usuario Muy Activo
Usuario Muy Activo
 
Mensajes: 126
Registrado: Mar Ene 03, 2006 3:52 pm

Re: ERROR DE SINTAXIS EN LA INSTRUCCIÓN UPDATE

Notapor ivancp el Dom Dic 16, 2007 12:25 pm

La consulta

UPDATE identificadores SET desc='descripción', date = '12-12-90' WHERE id='vacio'

tiene una palabra reservada como 'date', te sugiero cambiar el nombre de ese campo por otro.
ivancp
Programador Experimentado
Programador Experimentado
 
Mensajes: 301
Registrado: Jue Sep 06, 2007 12:57 pm

ya lo he cambiado y sigue fallando

Notapor atp el Dom Dic 16, 2007 12:36 pm

Ya está cambiado el campo date por otro que se llama fecha, pero siegue saliendo el mismo error.

Gracias por la prontitud de la respuesta pero sigue saliendo el mismo error de ERROR DE SINTAXIS EN LA INSTRUCCION UPDATE.

Lo llevo revisando y veo que las palabras update, where, set... están bien escritas, aún no sé donde peude fallar.

Saludos.
atp
Usuario Muy Activo
Usuario Muy Activo
 
Mensajes: 126
Registrado: Mar Ene 03, 2006 3:52 pm

ya está solucionado

Notapor atp el Lun Dic 17, 2007 11:32 am

Ya está solucionado, he cambiado el nombre de los campos date y desc por fecha y descripcion y ya funciona.

Saludos.
atp
Usuario Muy Activo
Usuario Muy Activo
 
Mensajes: 126
Registrado: Mar Ene 03, 2006 3:52 pm


Volver a Visual C++

¿Quién está conectado?

Usuarios navegando por este Foro: Google [Bot] y 0 invitados

cron