Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-06-2012
eldense eldense is offline
Registrado
 
Registrado: sep 2006
Posts: 2
Poder: 0
eldense Va por buen camino
Error actualizando campo DATE en MySQL

Saludos. Hacía tiempo que ya no escribía.

No he encontrado nada para este error ni aquí ni en ningún lado, así que a ver si ha alguien le ha ocurrido lo siguiente:

Estoy desarrollando un aplicación con Delphi 2010 y MySQL, conectados por componentes dbGO (ADO), y las tablas que tienen fechas y el campo es del tipo DATE, me ocurre lo siguiente:
Si creo un registro nuevo y los campos DATE estan en blanco, despues no los puedo cambiar desde la aplicacion, usando el comando:
dataset.edit;
dasetfecha.asstring := edit1.text; (verificando que el edit1 sea una fecha correcta)
dataset.post;

Al hacer el post me devuelve el siguiente error: "no se puede encontrar la fila para su actualizacion: algunos valores han cambiado desde la ultima vez que se leyo".

Aclarar que estoy yo solo accediendo a la base de datos

Este error sale cuando el valor anterior es el mismo valor a actualizar o es default de la base de datos (en mi caso 0000-00-00)
Obviamente he hecho un filtro para que si es igual se salte la edicion, pero necesito poder cambiar de fecha vacia a la nueva fecha.

Por si os sirve de algo, como al crear la tabla de la BD me obligaba a poner un valor por defecto, puse 0000-00-00.

En fin, no se si me he expresado bien, y si ha alguien se le ocurre que hacer.

Gracias de antemano a todos!
Responder Con Cita
  #2  
Antiguo 13-06-2012
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 13
MartinS Va por buen camino
y asi:

Código Delphi [-]
dataset.edit;
dasetfecha.AsDateTime := StrToDate(edit1.text);
dataset.post;

y si necesitas algun formato especial en la fecha

Código Delphi [-]
dasetfecha.AsDateTime := StrToDate(FormatDateTime('dd/mm/yyyy',StrToDate(Edit1.Text)));


Creo que deberías comenzar a incorporar SQL al código. Revisa la documentación del foro que hay mucha.-

Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Separar el mes de un campo date Camilo Conexión con bases de datos 6 20-11-2007 00:57:10
Actualizando Campo MySQL sin pasar su limite establecido karlaoax SQL 7 11-06-2007 16:13:15
Actualizando un Campo pasando Parametros con MyDac karlaoax SQL 14 27-04-2007 21:13:33
campo date Manuel Varios 2 29-08-2005 15:44:59
Actualizando un campo... StartKill Firebird e Interbase 5 05-03-2004 20:50:54


La franja horaria es GMT +2. Ahora son las 04:00:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi