FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
ayuda por favor!!!
hola gente del foro, mi problema es el siguiente tengo un formulario donde doy de altas a socios osea guardo los datos en una base de datos q esta en Mysql y en el formulario tengo un campo donde se encuentra la fecha de ingreso q es de tipo date donde uso un TdateTimePicker pero cuando lo voy a registrar me sale el siguiente error:
debugger exception notificacion: proyect principal.exe raised exception class edbengine error with message 'operation no aplicable.'. process stoped use step or run to continue el error creo q esta en la fecha xq la base de datos no admite el formato de la fecha de delphi o algo por el estilo je asi q por ahora toy usando una variable de tipo string para q me admita el campo de fechas y seguir con la alta de socios la fecha de ingreso q esta en mi bd es de tipo date; como podria hacer cuando de de alta a un socio ingrese la fecha y se guarde en mi base de datos. Código delphi [-]Código SQL [-]procedure talta_socios.preparo_altas_socios; begin dm.consulta.Close; dm.consulta.SQL.Clear; dm.consulta.SQL.Add('insert into socios values(:id_socio,:ingreso,:nombre,:nacimiento,:dni,:domicilio,:telefono,:movil,:mail,:estado,: peso,:cuota,: observaciones)'); dm.consulta.ParamByName('id_socio').AsInteger:= strtoint(ed_id.Text); dm.consulta.ParamByName('ingreso').AsDate:=fechaing.Date; dm.consulta.ParamByName('nombre').AsString:=ed_nombre.Text; dm.consulta.ParamByName('nacimiento').Asstring:='2008/05/29';//lo q toy usando para q me admita en la base de datos dm.consulta.ParamByName('dni').AsInteger:=strtoint(ed_dni.Text); dm.consulta.ParamByName('domicilio').AsString:=ed_domicilio.Text; dm.consulta.ParamByName('telefono').AsInteger:=strtoint(ed_telefono.Text); dm.consulta.ParamByName('movil').AsInteger:=strtoint(ed_movil.Text); dm.consulta.ParamByName('mail').AsString:=ed_mail.Text; dm.consulta.ParamByName('estado').AsString:=ed_estado.Text; dm.consulta.ParamByName('peso').AsString:=ed_peso.Text; dm.consulta.ParamByName('cuota').AsFloat:=strtofloat(ed_cuota.Text); dm.consulta.ParamByName('observaciones').AsString:=ed_observaciones.Text; end; |
#3
|
|||
|
|||
continua el poblema
hola CrazySoft probe con lo q me diste pero el problema es el mismo me da el mismo error: operacion no aplicable.
|
#4
|
|||
|
|||
Continua el problema
Código:
procedure talta_socios.preparo_altas_socios; begin dm.consulta.Close; dm.consulta.SQL.Clear; dm.consulta.SQL.Add('insert into socios values(:id_socio,:ingreso,:nombre,:nacimiento,:dni,:domicilio,:telefono,:movil,:mail,:estado,:peso,:cuota,:observaciones)'); dm.consulta.ParamByName('id_socio').AsInteger:= strtoint(ed_id.Text); dm.consulta.ParamByName('ingreso').AsDate:=fechaing.DateTime; //donde fechaing es el nombre del TDateTimePicker dm.consulta.ParamByName('nombre').AsString:=ed_nombre.Text; dm.consulta.ParamByName('nacimiento').Asstring:='2008/05/29'; //'2008/05/29' es la variable q uso para q se carge por ahora en mi Bd en el edit no introdusco nada dm.consulta.ParamByName('dni').AsInteger:=strtoint(ed_dni.Text); dm.consulta.ParamByName('domicilio').AsString:=ed_domicilio.Text; dm.consulta.ParamByName('telefono').AsInteger:=strtoint(ed_telefono.Text); dm.consulta.ParamByName('movil').AsInteger:=strtoint(ed_movil.Text); dm.consulta.ParamByName('mail').AsString:=ed_mail.Text; dm.consulta.ParamByName('estado').AsString:=ed_estado.Text; dm.consulta.ParamByName('peso').AsString:=ed_peso.Text; dm.consulta.ParamByName('cuota').AsFloat:=strtofloat(ed_cuota.Text); dm.consulta.ParamByName('observaciones').AsString:=ed_observaciones.Text; end; |
#5
|
|||
|
|||
Hola, yo creo que lo que le hace falta es indicarle los campos que se van a insertar.....
Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney Última edición por egostar fecha: 09-06-2008 a las 04:29:28. |
#6
|
||||
|
||||
Buenas.
Lo que tienes que hacer es cambiar el formato de la fecha a la americana, intenta declarar el tipo de formato de fecha a tipo americano y luego a convertir la fecha. A parte, intenta ingresar el campo de fecha como una cadena y no como tipo AsDate, ya que así te ahorrarás muchos problemas.:
A parte, como dice [egostar], te falta de poner la definición de los campos de la tabla. Yo mejor pondría toda la sintaxis en el comando de SQL y olvidarse del "ParamByName" Última edición por matabyte fecha: 09-06-2008 a las 05:16:10. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ayuda por favor... | BuRtOn | Varios | 62 | 07-03-2008 03:21:25 |
AYUDA por favor!!! | Melcv | Varios | 2 | 28-06-2006 21:19:35 |
Ayuda por favor | yusnerqui | Internet | 8 | 23-04-2004 09:26:43 |
ayuda por favor | haffo | Varios | 6 | 23-10-2003 03:50:33 |
Ayuda por favor | jtellof | Conexión con bases de datos | 4 | 08-09-2003 21:56:24 |
|