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 25-11-2008
chalao chalao is offline
Miembro
 
Registrado: sep 2008
Posts: 26
Poder: 0
chalao Va por buen camino
Sobre los componentes Zeos

Saludos foreros.

Iniciandome con los componentes Zeos como posible elección para controlar una base de datos desde Delphi2007 tengo varias dudas, como es normal ya que nunca manejé SQL.

Alguien sabe algún enlace donde pudiera encontrar una ayuda de Zeos similar a la que se incluye en la ayuda de Delphi2007 al instalar por ejemplo los componentes Indy ??? Me ayudaría bastante y ahorraría preguntas tontas en el foro

Mi problema concreto ahora mismo intuyo que es bastante sencillo pero aún no he conseguido encontrar ninguna referencia que me ayude.
Para probar los componentes lo único que me propuse hacer es moostrar los datos de una de mis tablas en un DBGrid. Mediante uno de los dos métodos siguientes:

ZConnection --> ZQuery --> DataSource --> DBGrid
ZConnection --> ZTable --> DataSource --> DBGrid

Tras configurar las propiedades y solucinar algún que otro erro fácil, lo más lejos que llego con cualquiera de los dos caminos es al error: RANGE CHECK ERROR.
Y aún no sé a que se debe.

Agradecería vuestra ayuda.
Responder Con Cita
  #2  
Antiguo 25-11-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.739
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
- Muestranos el código que utilizas, para que podamos ver cómo lo haces (y si es correcto)
- Supongo que la base de datos que quieres utilizar es MySQL (por el grupo en el que está este post). De no ser así debes indicarnoslo.
- También ayudaría que nos comentaras en qué punto da el error
* Puede ser cuando abres la conexión
* Puede ser cuando abres el ZQuery o ZTable
* Puede ser que al mostrar el grid, haya un problema de rangos (algo muy grande que no cabe donde le decimos que lo muestr)
- También deberías mostrarnos la sentencia SQL que utilizas en el ZQuery o ZTable
Responder Con Cita
  #3  
Antiguo 01-12-2008
chalao chalao is offline
Miembro
 
Registrado: sep 2008
Posts: 26
Poder: 0
chalao Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
- Muestranos el código que utilizas, para que podamos ver cómo lo haces (y si es correcto)
- Supongo que la base de datos que quieres utilizar es MySQL (por el grupo en el que está este post). De no ser así debes indicarnoslo.
- También ayudaría que nos comentaras en qué punto da el error
* Puede ser cuando abres la conexión
* Puede ser cuando abres el ZQuery o ZTable
* Puede ser que al mostrar el grid, haya un problema de rangos (algo muy grande que no cabe donde le decimos que lo muestr)
- También deberías mostrarnos la sentencia SQL que utilizas en el ZQuery o ZTable
La base de datos es MySQL, sí.
Intento hacer el ejemplo más simple posible, sólo establecer los vínculos, conectar y sacar algún dato para ver que funciona bien pero ni eso me funciona.
Con el ZQuery tengo dos tipos de errores:
"Range checking error", que supongo que será pq la DBGrid no tiene las dimensiones correctas, con la sentencia sql (SELECT * FROM eventos que selecciona un rango de datos
"Unknown MySQL data type" con la sentencia (SELECT idusuario FROM eventos WHERE idevento=3 que generaría un sólo dato.
El error me lo da cuando intento poner a True la propiedad Miscellaneous -> Active -> True en el Object inspertor de ZQuery.

La conexión la hace bien. O al menos no arroja error, con el ZConnection.

Muchas gracias a todos
Responder Con Cita
  #4  
Antiguo 01-12-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.739
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Trata de ir por partes, para ver el error.
Haz un form que solo contenga el ZConnection y un botón que lo abra.
Ejecuta esto y fíjate si funciona correctamente.

Luego Agrega un ZQuery y otro botón que lo abra.
Ejecuta, presiona el primer botón y luege este último y verifica que no da ningun error.

Agrega un DataSource y un grid y únelos al ZQuery.
Ejecuta el programa, presiona el primer botón para conectar, luego el segundo para abrir el ZQuery y fíjate si da error.

Postea tu código y dinos en qué línea da el error. Con lo que escribes no saco nada en claro.
Responder Con Cita
  #5  
Antiguo 02-12-2008
chalao chalao is offline
Miembro
 
Registrado: sep 2008
Posts: 26
Poder: 0
chalao Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
Trata de ir por partes, para ver el error.
Haz un form que solo contenga el ZConnection y un botón que lo abra.
Ejecuta esto y fíjate si funciona correctamente.

Luego Agrega un ZQuery y otro botón que lo abra.
Ejecuta, presiona el primer botón y luege este último y verifica que no da ningun error.

Agrega un DataSource y un grid y únelos al ZQuery.
Ejecuta el programa, presiona el primer botón para conectar, luego el segundo para abrir el ZQuery y fíjate si da error.

Postea tu código y dinos en qué línea da el error. Con lo que escribes no saco nada en claro.
OK, Gracias por tu ayuda.

Así lo he repetido, más paso a paso no lo puedo hacer:

Incluyo un ZConnection en un Form. Conectó y compruebo la propiedad connected. Ok
Compruebo varias propiedades más que me deja consultar y mostrarlas por ejemplo en un showmessage. Las únicas que no me deja consultar son ServerVersionStr y ClientVersionStr que arrojan el error de lectura de memoria: "Lectura de 0000000".

Incluyo un ZQuery y lo activo. En las sentencias SQL del ZQuery incluyo algunas como:
Código SQL [-]
INSERT INTO eventos (idevento,idusuario) VALUES (10,5);
SELECT * FROM eventos;
SELECT idusuario FROM eventos;

Y aparecen errores varios:
Con INSERT --> "Can not open a result set", supongo que será porque no lo muestro. Inserta los valores correctamente en la tabla. Lo miro usando SQLyog.
Con SELECT --> "Range check error"

Otro error aparece cuando intento poner más de una línea en las sentencias SQL de ZQuery, "Syntax error"

Prácticamente no hay código, pero por si acaso:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, DB, ZAbstractRODataset, ZAbstractDataset,
  ZAbstractTable, ZDataset, ZConnection, StdCtrls, Mask, DBCtrls, zdbcmysqlutils;

type
  TForm1 = class(TForm)
    ZConnection1: TZConnection;
    ZConnection: TButton;
    ZQuery1: TZQuery;
    ZQuery: TButton;
    procedure ZConnectionClick(Sender: TObject);
    procedure ZQueryClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ZConnectionClick(Sender: TObject);
begin
  zconnection1.Connect;
  if zconnection1.Connected then showmessage('Conectado a la base de datos ' + zconnection1.Database);
end;

procedure TForm1.ZQueryClick(Sender: TObject);
begin
  ZQuery1.Active := true;
end;

end.

De nuevo gracias por la ayuda
Responder Con Cita
  #6  
Antiguo 02-12-2008
Avatar de santiago14
santiago14 santiago14 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Cerrillos, Salta, Argentina
Posts: 583
Poder: 21
santiago14 Va por buen camino
Wink

Cita:
Empezado por chalao Ver Mensaje

Así lo he repetido, más paso a paso no lo puedo hacer:

Incluyo un ZConnection en un Form. Conectó y compruebo la propiedad connected. Ok
Compruebo varias propiedades más que me deja consultar y mostrarlas por ejemplo en un showmessage. Las únicas que no me deja consultar son ServerVersionStr y ClientVersionStr que arrojan el error de lectura de memoria: "Lectura de 0000000".

Incluyo un ZQuery y lo activo. En las sentencias SQL del ZQuery incluyo algunas como:
Código SQL [-]
INSERT INTO eventos (idevento,idusuario) VALUES (10,5);
SELECT * FROM eventos;
SELECT idusuario FROM eventos;

Y aparecen errores varios:
Con INSERT --> "Can not open a result set", supongo que será porque no lo muestro. Inserta los valores correctamente en la tabla. Lo miro usando SQLyog.
Con SELECT --> "Range check error"

De nuevo gracias por la ayuda
Bueno, al parecer hay un error en la nueva versión de ZEOS. Yo descargué la versión 6.6.4 stable y al intentar "select * from tabla" me sale "Range check error"
Tengo MySQL 5.0.27 y delphi 7; tuve innumerables inconvenientes con el ZEOS nuevo y opté por lo sano, me instalé una versión mas vieja: ZEOS 6.1.5 y se acabó el "range check error", eso si, tuve que hacer que MYSql trabaje con la encriptación vieja de la siguiente manera:

Código SQL [-]
GRANT ALL PRIVILEGES ON *.* TO root@'hostname' IDENTIFIED BY 'root-password'

SET PASSWORD FOR 'root'@'hostname' = OLD_PASSWORD('contraseña')

Si quieres el ZEOS viejo avisame que lo subo al hilo.

Saludos.

Santiago
__________________
Uno es responsable de lo que hace y de lo que omite hacer.

Última edición por santiago14 fecha: 02-12-2008 a las 14:46:49. Razón: Errores de ortografía
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
Instalar Componentes ZEOS Roilo MySQL 11 17-08-2007 21:53:26
Componentes ZEOS drakkon OOP 2 14-06-2007 16:22:22
ayuda con componentes zeos zanyodark C++ Builder 5 16-05-2007 22:09:44
Componentes Zeos jimmyx017 Conexión con bases de datos 2 12-10-2005 12:42:30
componentes ZEOS y Delphi 7 edfz Conexión con bases de datos 3 04-04-2004 22:14:17


La franja horaria es GMT +2. Ahora son las 06:39:50.


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