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
|
|||
|
|||
Consultar Item en Tabla en memoria
Buenas la consulta es como hago para saber si un registro existe en una tabla en memoria, es que no se como hacerle una consulta solo puedo eliminar el registro seleccionandolo con un dbgrid la cual uso este codigo
es para evitar que se repitan registros en la tabla la estructura es quiero evitar que se repitan por el codigo Última edición por Casimiro Notevi fecha: 26-06-2014 a las 15:27:27. |
#2
|
||||
|
||||
Lo mejor, creo yo, es hacer un select del código para ver si te devuelve algo. Si devuelve algo, quiere decir que ya existe y deberás evitar ese insert.
Para esto, los DataSets tiene los métoso onBeforeInsert/onBeforeUpdate También puedes poner algo en la base de datos que no permita duplicados. Puede ser: un PrimaryKey un UniqueKey un Trigger que se encargue de verificarlo. Si de todos modos quieres hacerlo mediante el dataset en memoria: Primero guarda el código de dónde estás. Luego deshabilitas el dataset, para que no se refresquen los datos mientras hacer el recorrido Recorres buscando lo el código Vuelves a posicionarte en el código que guardaste Habilitas el dataset
Nota: Si estás insertando o editando, este método no sirve, porque al moverte deberás hacer un Post o un Cancel |
#3
|
|||
|
|||
Y si ejecutas un query que realice un select de búsqueda del código que se introduce y si el recordcount del query te devuelve > 0 es que ya existe, si 0, lo aceptas.
Es una idea. Saludos |
#4
|
|||
|
|||
Esataba pensamdo eso pero como le le hago el query
en from que coloco si es una tabla en memoria? |
#5
|
||||
|
||||
Es que una cosa que todavía, creo, no ha quedado clara es si de lo que hablas es de un dataset en memoria o de una tabla de la base de datos en memoria, que son cosas distintas.
Según lo que cuentas imagino que es un dataset en memoria con lo que tendrías que usar la opción que te propone el colega duilioisola porque dudo que puedas ejecutar una instrucción SQL en un dataset en memoria. En caso de que fuera una tabla en memoria si que podrías pasarle una instrucción SQL como a otra tabla cualquiera de la base de datos. Saludos
__________________
Be water my friend. |
#6
|
||||
|
||||
¿Y no se puede usar algo del tipo lookup?
Ahora no tengo delphi aquí pero me suena que los componentes del tipo "dataset" suelen tener una función lookup con la que se sabe si existe un registro que cumpla una condición.
__________________
La Madurez se llama... ~~~Gaia~~~ Última edición por ozsWizzard fecha: 29-06-2014 a las 11:21:28. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Consultar Duplicados en una misma tabla o con otra tabla | ingabraham | SQL | 3 | 13-03-2010 12:26:13 |
Consultar tabla desde DBCOMBOBOX | ZeroHot | Conexión con bases de datos | 2 | 23-02-2010 17:43:54 |
Consultar el primer registro de una tabla | Jose Roman | SQL | 2 | 10-02-2010 23:30:00 |
Consultar en memoria | Vlady | SQL | 5 | 17-12-2008 16:36:36 |
Consultar los ultimos registros de una tabla | FGarcia | Firebird e Interbase | 18 | 09-10-2008 18:07:45 |
|