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 09-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
En los componentes Delphi también le tienes que indicar que usas el charset iso8859_1

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #2  
Antiguo 10-09-2004
Ignacio Ignacio is offline
Miembro
 
Registrado: may 2003
Posts: 77
Poder: 21
Ignacio Va por buen camino
1) Al crear la base de datos Interbase usando el EMS especifiqué en juego de caracteres ISO8859_1
2) Al crear cada campo alfanumerico, elegí el tipo Varchar, en el juego de caracteres especifiqué ISO8895_1 y en Collate ES_ES
3) En la PC cliente creo con el BDE administrator un alias donde no debo especificar tipo de caracteres.
4) En la aplicación Delphi 5 tomo el control TDatabase, en la propiedad Alias elijo el alias declarada en el punto anterior, en la propiedad DatabaseName especifico un nombre, en el TString de la propiedad params escribo las lineas siguientes: user name=SYSDBA, password=masterkey, lc_ctype=ISO8859_1
5) Tomo un control TQuery y en su propiedad DatabaseName le especificoel nobre de la propiedad DatabaseName del control TDatabase
6) El código que uso lo describí en la pregunta inicial.

Ante todo esto y siguiendo sin funcionar, la pregunta posible es: Como se activan los parametros del control TDatabase? ¿Me estoy equivicando en algun paso? ¿Ma falta especificar algo más?

Nuevamente gracias
Responder Con Cita
  #3  
Antiguo 10-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Hola.

En principio todo parece correcto, aunque nunca he usado BDE, por lo que la parametrización del TDatabase es lo que me parece más susceptible de tener el error (más que nada porqué no sé como se configura de forma correcta).

NOTA 1 : Para no tener que definir el juego de carácteres y collate set, cada vez que se crea un campo, puedes utilizar dominios. Al crear campos solo tienes que indicar el dominio al que pertenece (el cual contendrá toda esa información).

NOTA 2 : Para acceder a Interbase/Firebird te recomiendo los componentes FibPlus/IBO/IBX/dbExpress/UIB/Zeos/... en lugar del BDE. Basicamente porqué el BDE está descatalogado y hace años que no es actualizado por Borland (ya no sacarán nuevas versiones).

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #4  
Antiguo 13-09-2004
Jech Jech is offline
Registrado
 
Registrado: sep 2004
Posts: 9
Poder: 0
Jech Va por buen camino
Thumbs up Una pregunta mas...????

Bueno primero que nada quisiera saludarlos y felicitarlos por toda la ayuda que prestan, el motivo hacerles una interrogante, sobre el porque?? pasa esto a veces si y otras veces introduce normalmente??, espero puedan contestarme, y no se si habra otra forma mas fácil de realizarlo bueno si se puede me ayudarian bastante pues la verdad no se que es que significa EMS muchas gracias y saludos.
Atte. Jech
Responder Con Cita
  #5  
Antiguo 14-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Hola.

En principio puede pasar cuando se utilizan distintas páginas de códigos en la base de datos, y en la aplicación que accede a ella. Entonces cuando se utiliza un carácter inexistente en una de las páginas de código, o que tengan códigos distintos (como las eñes, acentos, ...), salta el error.

La solución pasa por definir correctamente la página de códigos en ambos lugares, personalmente suelo utilizar la iso8859_1.

El EMS es una aplicación de Administración de Interbase, aunque mi preferida es el IB-Expert, que tiene una versión personal, gratuita.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #6  
Antiguo 18-09-2004
Ignacio Ignacio is offline
Miembro
 
Registrado: may 2003
Posts: 77
Poder: 21
Ignacio Va por buen camino
Re-pregunta

Hola

Marc Guillot
Para usar IBx de Delphi 5 debo hacerte unas preguntas. Puede ser?
* Como conecto el control IBdatabase a la base de datos? No se usan alias?
* El control IBqry va conectado a IBdatabase. Por qué debo tambien conectarlo a IBtransaction? Como uso IBtransaction?
* Los parámetros UserName, Password y Lc_type donde los declaro? Cómo hago para que los tome? Cómo evito que me pida la clave?
* Qué papel juega en todo esto la propiedad LogiPrompt y el evento OnLogin?

seguramente me faltan un montón de preguntas, pero creo que con estas tengo para empesar.

Muchísimas gracias.
Responder Con Cita
  #7  
Antiguo 18-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Hola.

1) No, no se usan Alias. Se especifica la Base de Datos a la que nos queremos conectar en las propiedades del IBDatabase. En concreto en la propiedad DatabaseName.
2) En efecto debes conectarlo a un IBTransaction, puesto que cualquier consulta/operación en Interbase debe estar asociada a una transacción. En principio, la transacción solo debes iniciarla (StartTransaction) y finalizarla con un Commit o RollBack cuando hagas cambios en la Base de Datos y los quieras confirmar. Varias consultas (IBQuerys) pueden estar asociadas a la misma transacción.
3) En el Params del IBDatabase (aunque si haces un doble-click sobre el IBDatabase, te saldrá un editor para rellenarlas).
4) Poner el LoginPrompt a False, evita que te pida la clave. Respecto al evento OnLogin, sirve por si quieres realizar alguna acción adicional al registrarte en la Base de Datos.

Te recomiendo que te hagas con un buen libro de programación en Delphi, que toque la programación de Bases de Datos. Mis favoritos són (en este orden) :

a) La cara Oculta de Delphi 6 (de Ian Marteens)
b) Delphi 7 y Kylix (de Francisco Charte)
c) La Biblia de Delphi 7 (de Marco Cantú)

Igualmente, creo que te interesaran los artículos de esta web :

http://firebird.com.mx

Finalmente, si estás utilizando Interbase 6 OE porqué es gratuito, te recomiendo que te pases a Firebird, puesto que las nuevas versiones de Interbase són comerciales, a diferencia de Firebird que es un proyecto open source generado a partir de IB 6 OE.

En caso de cambiar a Firebird, te recomiendo utilizar componentes FibPlus o IBObjects en lugar de IBX, debido a que Borland no va a preocuparse en mantener IBX compatible con las futuras versiones de Firebird.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
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


La franja horaria es GMT +2. Ahora son las 23:45:49.


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