Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-06-2008
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
no hay setkey en firebird?

Hola, me imagino que la consulta es muy basica puesto que no la he encontrado en el foro, os hago una preguntita.
No estoy muy ducho con el firebird me falta bastante para manejarlo con soltura, pero gracias a vosotros he aprendido bastante como para ahcer una aplicacion bastante decente embebida.

Uso delphi 7 y componentes zeos, el problema en cuestion que quiero buscar una clave concreta en una tabla pero solo puedo usar el locate que me rastrea toda la tabla y no quiero eso, he buscado el setkey pero no aparece, existe otra forma para hacer eso?, ir a un registro concreto en base a una clave?

muchas gracias amigos
Responder Con Cita
  #2  
Antiguo 14-06-2008
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
ya que tienes un query puedes hacer un select.

Código SQL [-]
Select * from mitabla where campoclave = :clave
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #3  
Antiguo 14-06-2008
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
se agradece la informacion, a ver como me va con el sql .
Responder Con Cita
  #4  
Antiguo 14-06-2008
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
Cualquier cosa pregunta, porq traerse todos los datos para un locate no es muy eficiente que digamos
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #5  
Antiguo 14-06-2008
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
se agradece nuevamente.
Entonces me creo un query y le asigno la clave en tiempo de ejecucion, de ahi no se cargan entonces todos los datos?
Responder Con Cita
  #6  
Antiguo 14-06-2008
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
seria algo asi:

Código Delphi [-]
Miquery.Active := False;
   Miquery.parambyname('Clave').AsString := 'Algùn valor';
Miquery.Active := True;

Solo devuelve los registros que cumplan con la condición
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #7  
Antiguo 04-10-2008
Pedro-Juan Pedro-Juan is offline
Miembro
 
Registrado: ago 2006
Ubicación: Barcelona - España
Posts: 315
Poder: 18
Pedro-Juan Va por buen camino
Setkey, y otros.

Hola y un saludo a tod@s.

Delphi6, Firebird2.0.4, Zeos6.6.3

Me he pasado hace muy poco a firebird y zeos y tengo el mismo problema.

No puedo compilar porque me da errores en SetKey, GoToKey y FindKey.

¿Sabeis si los zTables tienen algún método que sustituya estos? Tal vez con otro nombre.

Muchas gracias y un saludo.
__________________
Este mundo es el camino para el otro, que es morada sin cesar. Mas cumple tener buen tino para andar esta jornada sin errar. (J. Manrique)
Responder Con Cita
  #8  
Antiguo 04-10-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
En firebird no se debe usar zTables, sería utilizar un ferrari como un seiscientos (sin ánimo de ofender)

Deberías usar un zDataset / zQuery / zUpdateSql siempre. (puede que ese no sea el nombre, no uso Zeos).

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #9  
Antiguo 04-10-2008
Pedro-Juan Pedro-Juan is offline
Miembro
 
Registrado: ago 2006
Ubicación: Barcelona - España
Posts: 315
Poder: 18
Pedro-Juan Va por buen camino
Zeos y código ya hecho en delphi (compatibles?)

Cita:
Empezado por Lepe Ver Mensaje
En firebird no se debe usar zTables, sería utilizar un ferrari como un seiscientos (sin ánimo de ofender)

Deberías usar un zDataset / zQuery / zUpdateSql siempre. (puede que ese no sea el nombre, no uso Zeos).

Saludos
Hola,Lepe. No me ofendes. Acabo de conocer Zeos, he cambiado todas las TTables por las zTables y ahora me encuentro con este problema. He comprobado que tambien da error de compilación con Exclusive y con EmptyTable... y seguro que con más. Por cierto, el zDataSet no lo encuentro.

Mi situación es que tengo terminada la aplicación, con InterBase y con los componentes de BBDD de Delphi, pero quiero que corra con firebird embedded y olvidarme del BDE.

Serias tan amable de indicarme unos componentes de acceso a BBDD con los que no tenga que modificar el código y que sean baratos? (He oido hablar de los FIB, pero se van de precio).

Muchas gracias de antemano y un saludo.

P.D. Una curiosidad (al menos para mi):
Me han proporcionado unos archivos.pas que integran embedded en el EXE de delphi, pero tengo que probarlo. Es decir, solo hay que distribuir el ejecutable. Lo pongo por si tu o alguien quiere hacer un comentario.
__________________
Este mundo es el camino para el otro, que es morada sin cesar. Mas cumple tener buen tino para andar esta jornada sin errar. (J. Manrique)
Responder Con Cita
  #10  
Antiguo 05-10-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Yo hasta ahora en Firebird sólo he probado los MDOLIB (open source y gratuito) pero hace un par de años que nadie lo modifica, no sé si funcionará con firebird 2 o si da problemas.

En Zeos seguro que puede hacerse, pero no los he usado, seguro que otro en el foro puede ayudarte más que yo en ese sentido.

Si quieres aprovechar toda la potencia de Firebird, tienes que cambiar la forma de pensar, y eso implica modificar muchas cosas:
- Crear generadores
- Usar Querys en lugar de locate, setkey, etc
- configurar las transacciones
- olvidarte de los zTables (más que nada porque internamente lo que haces es un select * from tabla, es decir, siempre trae todos los registros que haya en la base de datos al lado cliente). Tú quieres usar la forma embebida, por tanto, solo una persona va a acceder a la base de datos y quizás no te afecte en nada, no puedo asegurarlo.

Una forma de probarlo es crear 10.000 registros en la tabla y ahora ver el tiempo que tarda en abrirla, debe ser algo instantáneo.

Para el servidor embebido (incrustado o como quieras llamarlo), creo recordar que en la carpeta de Firebird tienes documentos sobre el tema, archivos txt. Ahí explica cómo crear las estructuras de carpeta para que funcione. Por ejemplo, si usas UDFs tienes que crear una estructura así:
Código:
tu carpeta
    |- tu ejecutable
    |- la dll de firebird
    |- UDF 
         |- el archivo dll de las udfs que uses
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #11  
Antiguo 05-10-2008
Pedro-Juan Pedro-Juan is offline
Miembro
 
Registrado: ago 2006
Ubicación: Barcelona - España
Posts: 315
Poder: 18
Pedro-Juan Va por buen camino
Muchas gracias, Lepe. A ver qué pasa.

Cita:
Empezado por Lepe Ver Mensaje
Si quieres aprovechar toda la potencia de Firebird
No sé si lo necesito. Sólo hago aplicaciones monousuario, con BBDD pequeñas (dificilmente superan los 30.000 registros). Me funcionaba perfectamente con interbase y los componentes de delphi en la máquina de desarrollo, pero no en la de destino, de ahí todo este cambio a firebird embedded.

La estructura de directorio ya la tengo así.

Muchas gracias de nuevo y un saludo.
__________________
Este mundo es el camino para el otro, que es morada sin cesar. Mas cumple tener buen tino para andar esta jornada sin errar. (J. Manrique)

Última edición por Pedro-Juan fecha: 05-10-2008 a las 06:54:18.
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
Firebird 1.5.4 funciona en Win Vista pero Firebird 2.0.1 NO !!! Hagen Firebird e Interbase 5 19-05-2007 21:17:54
Firebird 1.5.3 Error:No puede ejecutarse Firebird Guardian xq ya hay una instancia Delphius Firebird e Interbase 5 26-01-2007 10:19:20
alguien ha utilizado Firebird DDX provider? (conectarse con db en firebird!) JuanErasmo .NET 1 04-11-2006 16:17:12
Setkey o similar para Zeos->MYSQL Ade Conexión con bases de datos 2 13-09-2006 04:16:29
Problemas Firebird Super Server 1.5 con RFunc Firebird v 1.0 Prophoenix Firebird e Interbase 1 09-03-2004 11:40:48


La franja horaria es GMT +2. Ahora son las 11:46:36.


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