![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
En realidad es un sowfware tipo registro en donde agrego cedula q es llave nombre una direccion y una fecha de nacimienton, utilizo una herramienta llamada dbnavigator para hacer la insercion a la base de datos en este caso utilizando MYSQL y entonces quiero evitar el error de
agregar datos duplicados en la base.... |
|
#2
|
||||
|
||||
|
Hola Jusar.
Una solución es aprovechar el evento OnSetText del campo que no debe estar duplicado. El evento OnSetText de la clase TField se dispara cuando se le asigna un valor a la propiedad Text, pero antes de que sea guardado. Para ejemplificar voy a utilizar como nombre de tabla CLIENTES y como nombre del campo CLIENTE_ID: Código:
void __fastcall TForm1::IBDataSet1CLIENTE_IDSetText(TField *Sender,
const AnsiString Text)
{
TuQuery->Close();
TuQuery->SQL->Clear();
TuQuery->SQL->Add("SELECT * FROM CLIENTES ");
TuQuery->SQL->Add("WHERE CLIENTE_ID = :VALOR");
TuQuery->ParamByName("VALOR")->AsString = Text;
TuQuery->Open();
if (!TuQuery->IsEmpty()) {
MessageBox(Handle,"El dato que desea ingresar ya existe",
"ERROR", MB_ICONERROR);
Abort();
}
IBQuery->Close();
}
Código:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
DataSet->FieldByName("CLIENTE_ID")->OnSetText = DataSetCLIENTE_IDSetText;
}
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| mensaje no se cierra cuando inicio un programa | granodetoro | Varios | 5 | 07-04-2011 21:24:49 |
| Mensaje para no duplicar la clave primaria de la base de datos | ivansito | PHP | 8 | 08-08-2007 00:53:51 |
| Borrar datos duplicados | Sr.Scorpion | Conexión con bases de datos | 4 | 20-06-2005 19:52:57 |
| error al abrirse la aplicación cuando la base de datos esta en un 2003 server | Giniromero | Conexión con bases de datos | 2 | 15-03-2005 10:09:35 |
| Qreport se me queda pillado cuando mi base de datos es muy grande | Nbull | SQL | 5 | 23-11-2004 17:01:37 |
|