PDA

Ver la Versión Completa : problemas con zeos...ayuudaaaa


Jheysson13
22-06-2008, 17:40:16
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:

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 (http://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
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 (http://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
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:

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:

''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:

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.

''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
:( acabo de hacer eso y aun me da el mismo error.

Código Delphi [-] (http://www.clubdelphi.com/foros/#)''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
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:

Mysql-> GRANT SELECT, INSERT, DELETE, UPDATE, CREATE, DROP
Mysql-> ON ferreteria.*
Mysql-> TO root@10.0.0.4>
Mysql-> IDENTIFIED BY '<PASSWORD>';

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..

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 :

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:

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:

use ferreteria;
grant INSERT,delete,update,select,DROP,CREATE
on ferreteria.articulos
to root@10.0.0.4
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
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 [-] (http://www.clubdelphi.com/foros/#)use ferreteria;
grant INSERT,delete,update,select,DROP,CREATE on ferreteria.articulos
to root@10.0.0.4
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

grant select, insert, delete, UPDATE,CREATE, drop
on ferreteria
to root@10.0.0.4
identified by '';

me sale el siguiente error

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:

grant select, insert, delete, UPDATE,CREATE, drop
on ferreteria.* <--//¿Ves el punto y asterisco?
to root@10.0.0.4
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:

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 root@10.0.04.

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
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
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:

create database minuevabase;

hace lo siguiente:

access denied for user 'root'@'localhost' to database 'minuevabase'

y asi me hace con otros comandos como el 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
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

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