Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   problemas con zeos...ayuudaaaa (https://www.clubdelphi.com/foros/showthread.php?t=57615)

Jheysson13 22-06-2008 17:40:16

problemas con zeos...ayuudaaaa
 
sucede que he comenzado a utilizar mysql (4.1) y he instalado los componentes zeos para la conexion con delphi 7, pero cuando hago un proyecto de ejemplo he intento correrlo me da un error en los componentes:

Código Delphi [-]
unit Unit1;

interface

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

me dice que no encuentra el archivo zconection, pero el problema es que el componente esta ahi.. alguien puede aclararme con esto..gracias.

eduarcol 22-06-2008 17:41:42

lo que sucede es que debes agregar a la lista de librerias el directorio donde se encuentran las fuentes de Zeos

Jheysson13 22-06-2008 17:47:56

estas seguro que ese es el error, porque segui al pie de la letra cada instruccion del manual para agregar las librerias.
http://www.feran.com.mx/archivos/Como_Instalar_ZeosLib_Y_No_Morir_En_El_Intento.pdf


tal como lo explica este manual.. de todas formas voy a copiar las librerias donde tengo instalado dephil y hacer todo el procedimiento otra vez.. gracias de todos modos, y si no me funciona tendre que volver a ver..:)

eduarcol 22-06-2008 17:56:14

Cita:

Empezado por Jheysson13 (Mensaje 295261)
estas seguro que ese es el error, porque segui al pie de la letra cada instruccion del manual para agregar las librerias.
http://www.feran.com.mx/archivos/Como_Instalar_ZeosLib_Y_No_Morir_En_El_Intento.pdf


tal como lo explica este manual.. de todas formas voy a copiar las librerias donde tengo instalado dephil y hacer todo el procedimiento otra vez.. gracias de todos modos, y si no me funciona tendre que volver a ver..:)

Seguro 100% nop, pero seria bueno que lo hicieras, es lo mas probable

Jheysson13 22-06-2008 19:42:17

muuuuchassssss gracias tenias razon, pero tube que reinstalar tanto el delphi como los componentes, pero al fin me funciono creo que era por las librerias como dijiste....graciassssssss:D:D:D..

pero ahora tengo otro problema al intentar conectar con la base de datos (problema tipico de los principiantes segun veo en los hilos)...cuando activo la propiedad de zconection connectad a true me da un error asi ''sql error: host 'nombre de mi pc' its not allowed connect to this sql serve'' y no se a que se deba si estoy siguiendo los pasos del manual que ya postee en el hilo.. podrian ayudarme alguito,o referirme un hilo similar al mio gracias.

enecumene 22-06-2008 19:50:47

Cita:

Empezado por Jheysson13 (Mensaje 295289)
muuuuchassssss gracias tenias razon, pero tube que reinstalar tanto el delphi como los componentes, pero al fin me funciono creo que era por las librerias como dijiste....graciassssssss:D:D:D..

pero ahora tengo otro problema al intentar conectar con la base de datos (problema tipico de los principiantes segun veo en los hilos)...cuando activo la propiedad de zconection connectad a true me da un error asi ''sql error: host 'nombre de mi pc' its not allowed connect to this sql serve'' y no se a que se deba si estoy siguiendo los pasos del manual que ya postee en el hilo.. podrian ayudarme alguito,o referirme un hilo similar al mio gracias.

Eso es porque no le has dado privilegios de la PC al servidor, Haz lo siguiente, Entras a la ventana de comandos de Mysql, y escribe lo siguiente:

Cita:

Mysql-> GRANT SELECT, INSERT, DELETE, UPDATE, CREATE, DROP
Mysql-> ON <Base de datos>.*
Mysql-> TO root@<Nombre PC o IP>
Mysql-> IDENTIFIED BY '<PASSWORD>';
Luego de eso intenta conectarte de nuevo, Suerte!!

Saludos.

Jheysson13 22-06-2008 20:08:51

bien bien, ahora esta o siguiente, cuando cree la base de datos ' ferreteria' no use passwor, tampoco cuando instale mysql4.1 o use paswor para evitar todo eso del pass, asi que omiti la ultima sentencia que me diste, y me funciono por que no dio error en la sentencia..
intente conectarme otra ves y me dice:

Código Delphi [-]
''sql eror: accesss denied for user 'mi pc' (using passwor:no)''

crees que debo crear mi base de datos con pass, o reconfigurar el mysql con pass o que.. puedes ayudarme..gracias.

enecumene 22-06-2008 20:19:29

Si creaste el servidor sin clave, simplemente debias hacer esto:

Código Delphi [-]
Mysql-> IDENTIFIED BY '';

Saludos.

Caral 22-06-2008 20:37:37

Hola
Cada dia me siento mas Novato.
Saludos

Jheysson13 22-06-2008 20:39:34

:( acabo de hacer eso y aun me da el mismo error.

Código Delphi [-]
''sql eror: accesss denied for user 'mi pc' (using passwor:no)''


no pense que conectar ua base de datos era tan complicado, ahora veo por que solo me enseñaron a trabajar con paradox 7 jejej.

enecumene 22-06-2008 20:46:12

Cita:

Empezado por Jheysson13 (Mensaje 295317)
:( acabo de hacer eso y aun me da el mismo error.

Código Delphi [-]''sql eror: accesss denied for user 'mi pc' (using passwor:no)''



no pense que conectar ua base de datos era tan complicado, ahora veo por que solo me enseñaron a trabajar con paradox 7 jejej.

A ver, ponga aquí de cómo lo hiciste.

Jheysson13 22-06-2008 21:04:42

empesare desde el principio jeej:
en delphi 7 y mysql 4.1 sin paswor en ningun lado.

1- cree mi bases de datos en mysql 4.1
Código SQL [-]
create database ferreteria;
 use ferreteria;
create table articulos
>cod varchar(20), descripcion varchar(40);

luego hice lo que me dijo enecumene para poder modificar la base datos supongo:

Código SQL [-]
                Mysql-> GRANT SELECT, INSERT, DELETE, UPDATE, CREATE, DROP
Mysql-> ON ferreteria.*
Mysql-> TO [email protected]>
Mysql-> IDENTIFIED BY '';

en delphi utilize los componentes de zeos:
zconnection, ztable, datasource y dbgrid

al zconnection modifique lo siguiente:
catalog ferreteria
database ferreteria
hotname (mi ip)10.0.0.4 ejemplo
user (mi nombre de pc)

al ztabel
connection zconecction1
pero en tablename no me aparecen la tabla articulo que se supone deberia aparecer.

entonces cuando activo la propiedad del zconnection conected (true) me da el error que ya he mencionado..

Código Delphi [-]
sql eror: accesss denied for user 'mi pc' (using passwor:no)

que hes lo que estoy aciendo mal..:confused::confused:

enecumene 22-06-2008 21:53:58

Hola, en ZConnection :
Cita:

Database: ferreteria
Protocol: Mysql
User: root
Password:
Hostname: 10.0.0.4
En Mysql por defecto lleva como user root, así que debes poner root en user.

Saludos

Jheysson13 22-06-2008 22:59:23

muuuuuuuchaaaa graciassss era eso enecumene solo hice poner el user root y se conecto sin problemas la base de datos..

mas como le hago para conectar la ztable con el zconnection por que todavia no me aparece el nombre de la tabla en la propiedad tablename del ztable..

espero no estar molestando mucho con esto...gracias.:)

enecumene 23-06-2008 02:54:05

El ZTable tiene una propiedad llamada connection, ahí vinculas al ZConnection y luego podrás seleccionar la tabla deseada.

Saludos.

Jheysson13 23-06-2008 03:52:05

ya hice esa coneccion en la propiedad connection de ztable pero aun no me aparece la tabla en la propiedad tablename del ztable.

sera que tengo que hacer algun codigo sql para conectar el zconection con el ztable, porque si escribo el nombre de la tabla (articulos) en la propiedad tablename del ztable e intento activarla igual que el zconection,me da un error:

Código SQL [-]
sql error: select command denied to user 'root'@'mipc' for table 'articulos'

talves tengo que hacer lo mismo y darle privilegios a la tabla ,como hice con la base de datos anterriormente, gracias a enecumene.
ayudeme alguien please...

Jheysson13 23-06-2008 18:38:01

saludos de nuevo.. queria confirma que ya he podido activar mi ztable mas tube que hacer elmismo codigo en mysql, que hice con el database solo que de esta manera:

Código SQL [-]
use ferreteria;
grant INSERT,delete,update,select,DROP,CREATE
on ferreteria.articulos
to [email protected]
identified by '';

ahora bien solo keria saber si cada vez que haga una tabla nueva en mi base de datos, tengo que hacer lo mismo siempre,o existe alguna sentencia en mysql que me de permiso para todas las tablas de la base de datos..no se si me di a entender bien..
espero una respuesta por favor...graciass

enecumene 23-06-2008 18:41:35

Cita:

Empezado por Jheysson13 (Mensaje 295514)
saludos de nuevo.. queria confirma que ya he podido activar mi ztable mas tube que hacer elmismo codigo en mysql, que hice con el database solo que de esta manera:

Código SQL [-]use ferreteria;
grant INSERT,delete,update,select,DROP,CREATE on ferreteria.articulos
to [email protected]
identified by '';


ahora bien solo keria saber si cada vez que haga una tabla nueva en mi base de datos, tengo que hacer lo mismo siempre,o existe alguna sentencia en mysql que me de permiso para todas las tablas de la base de datos..no se si me di a entender bien..
espero una respuesta por favor...graciass

De veras no sé por qué hace ese comportamiento no debería, ya que con solo dar privilegios a la base debería incluir las tablas, en mi caso no tengo ese problema, tal vez sea por la versión de Mysql, yo ahora mismo estoy usando la versión 5.xxx.

Saludos.

Jheysson13 23-06-2008 20:46:46

entonces creo que voy a instalar la version 5 y a probar denuevo..gracia por la respuesta.:):), luego les comento

Jheysson13 23-06-2008 21:47:02

hola denuevo, como dije instale el mysql 5.0 para ver si este era el problema pero cuando hagolo siguiente

Código SQL [-]
grant select, insert, delete, UPDATE,CREATE, drop
on ferreteria
to [email protected]
identified by '';

me sale el siguiente error

Código SQL [-]
Can't find any matching row in the user table

pensaba que estaba haciendo el codigo mal y me baje el ems sql manager for mysql y me da el mismo error, a que se debe esto ya que en la version 4.1 del mysql nunca me sucedio... gracias

enecumene 24-06-2008 01:07:08

Hola, veo que te falta algo, a lo mejor sea eso:

Cita:

grant select, insert, delete, UPDATE,CREATE, drop
on ferreteria.* <--//¿Ves el punto y asterisco?
to [email protected]
identified by '';
Saludos.

Jheysson13 24-06-2008 17:17:28

Gracias por notar ese punto y aclaramelo, creo que ese podia ser el problema a que no le otorgaba los privilegios a las tablas...

pero como a mi siempre se me complican las cosas, ahora me pasa algo peor,
el mysql no me permite hacer nada mas que cargar la base de datos, si intento crear una nueva bae de dato, tabla, hasta otorgar los priviligios me sale el siguiente error:

Código SQL [-]
access denied for user 'root'@'localhost' to database 'mibasededatos'

pienso que seria algun error de mysql, pero lo reinstale y me hace lo mismo. estoy seguro que se bloqueo de alguna manera.. como soluciono esto..

gracias.....

enecumene 24-06-2008 17:20:13

Hola, amigo una pregunta:

¿10.0.0.4 = localhost?, si no es así debes hacer el proceso de nuevo con root@localhost en vez de [email protected].

Saludos.

Jheysson13 24-06-2008 17:38:17

gracias por tu atencion, me imaginaba que localhost=10.0.0.4, osea mi ip y trate de igual maneram y me sale el mismo error. pero este error en dado caso solo deberia de aparecer al dar privilegios a las bases de datos, no deberia de salir el mismo error al crear una base de dato nueva,es el mismo error creando bases, otorgando privilegios, entiendes..

espero me entiendas gracias de nuevo..

enecumene 24-06-2008 17:42:33

Cita:

Empezado por Jheysson13 (Mensaje 295753)
gracias por tu atencion, me imaginaba que localhost=10.0.0.4, osea mi ip y trate de igual maneram y me sale el mismo error. pero este error en dado caso solo deberia de aparecer al dar privilegios a las bases de datos, no deberia de salir el mismo error al crear una base de dato nueva,es el mismo error creando bases, otorgando privilegios, entiendes..

espero me entiendas gracias de nuevo..

Hola, amigo, a cada base de datos nueva debes darle los privilegios a las pc que la van a utillizar, lo que no debes darle privilegios ya que la tienen son las tablas de dicha base de datos, o sea, por cada base de datos que creas debes crear los privilegios necesarios, no las tablas.

Saludos.

Jheysson13 24-06-2008 17:51:01

Cita:

Empezado por enecumene (Mensaje 295754)
Hola, amigo, a cada base de datos nueva debes darle los privilegios a las pc que la van a utillizar, lo que no debes darle privilegios ya que la tienen son las tablas de dicha base de datos, o sea, por cada base de datos que creas debes crear los privilegios necesarios, no las tablas.

Saludos.

me imaginaba que no me entederias jejej, lo que sucede es que cuando hago lo siguiente:

Código SQL [-]
create database minuevabase;

hace lo siguiente:

Código SQL [-]
access denied for user 'root'@'localhost' to database 'minuevabase'

y asi me hace con otros comandos como el
Código SQL [-]
grant select,insert....
espero que me entiendas ahora,es que no me da la oportunidad de crear una base nueva..gracias por tu pasiensia jeje.

enecumene 24-06-2008 17:57:47

:eek: :p, vale, ¿por donde creas la base?, por la ventana de comando o por un manejador?.

Jheysson13 24-06-2008 18:06:48

bueno, anteriormente las creaba por las ventanas de comando de mysql, pero como era demaciado duradero crear las tablas decidi utilizar el sql manager 2007 for mysql...

pero se da el caso que ahora no puedo crear bases de datos, ni dar privilegios, ni desde la ventana de comandos ni del manager..
nota: al principio podia utilizar los dos metodos para no perder la costumbre, pero desde ayer me comenzo este error:confused::confused:...gracias de nuevo

enecumene 24-06-2008 18:10:20

Cita:

Empezado por Jheysson13 (Mensaje 295762)
bueno, anteriormente las creaba por las ventanas de comando de mysql, pero como era demaciado duradero crear las tablas decidi utilizar el sql manager 2007 for mysql...

pero se da el caso que ahora no puedo crear bases de datos, ni dar privilegios, ni desde la ventana de comandos ni del manager..
nota: al principio podia utilizar los dos metodos para no perder la costumbre, pero desde ayer me comenzo este error:confused::confused:...gracias de nuevo

Cuando instalaste MySQL 5.0, volviste a crear el host con los datos correctos y registraste la base de nuevo con el manager?.

Jheysson13 24-06-2008 18:24:51

cuando instale el mysql 5 lo hice igual que la rpimera vez todo en defaul, las bases de datos las cree nuevamente para evitar conflictos y el manager me reconoce la base de datos.. pero ahora cuando la conecto la base de datos con el manager me da un error aunke se conecta

Código SQL [-]
sql error: select command denied to user 'root'@'localhost' for table 'mitabla'

como veo por el lado que vas, voy a desintalar el manager y tratar de nuevo, pero si tienes alguna recomendacion la espero gracias..

enecumene 24-06-2008 18:34:51

Bueno, dejame decirte como trabajo yo, yo uso un paquete Apache+Mysql+PHP, donde lo instalas y queda todo configurado, ya que es mas facil que instalarlo todo individual, entonces, para manejar la base de datos yo utilizo el phpMyAdmin que ya trae el paquete, tal vez cuando usas el EMS manager, el servidor Mysql lo ve como una maquina mas, ¡ojo!, nunca usado el EMS for Mysql aunque si conozco su interfaz ya que es la misma que el de EMS for Interbase/firebird.

El paquete que uso es AppServ.

Saludos

Jheysson13 24-06-2008 18:57:21

bueno gracias por el concejo, ya habia desintalado el ems manager y el mysql y reinstale solo el mysql y cuando lo probe me funciono bien..
mas como habia dicho antes que era muy complejo estar creando tablas en la ventana de comandos, creo que me bajare el paquete que me dices y lo probare... gracias de nuevo por tu ayuda..

aunque estoy seguro que volvere por tu ayuda pronto jejeje, gracias..

enecumene 24-06-2008 18:58:52

Despreocupate compañero que aquí te espero, luego te paso la factura. :D

Saludos.

Jheysson13 25-06-2008 00:02:00

espero que no sea cara esa factura ejejej, por que tengo algunas dudas mas que deseo plantear, antes de continuar con mi proyecto, aprovecho este hilo para no habrir uno nuevo si algun moderador piensa que esta mal puede tomar accion si preocuparse...

1: para que mi programa funcione en una pc sin delphi instalado que debo hacer?
2: si tengo que llevar mi trabajo a la universidad como llevo las bases de datos que cree en mysql en mi casa? pues el mysql almacena por si solo las bases de datos (de que forma la llevo con mi programa)

3:es necesario instalar el mysql en todas las pc donde voy a correr mi programa?
(dado el caso, tendria que otorgar privilegios tambien es decir; grant select, insert.....y esas cosas).
espero entiendan mis inquietudes..y que no sean algo tontas las preguntas.
gracias de nuevo:D


La franja horaria es GMT +2. Ahora son las 22:38:18.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi