Jump to content
Hercles

Lazarus x Mysql x Linux...

Recommended Posts

Hercles

Olá!

Caros,

desculpem minha ignorância no assunto... um programa que criou no Lazarus ele pode acessar qualquer banco de dados em mysql se for feita a configuração necessária? Pergunto porque o professor disse que o banco de dados já esta feito no laboratório da faculdade...

Share this post


Link to post
Share on other sites
nunopicado

Se já está feito, pede-lho.

Precisas saber o nome da base de dados, e principalmente o nome e tipo dos campos, para poderes usa-los no teu programa.

Ele que te dê uma copia para trabalhares, e testares enquanto fazes o programa.

Depois quando lá chegares, é só configurar os dados do servidor e ele irá funcionar.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

certo. me diz uma coisa... quando coloco o cpf int primary key na hora de cadastrar um funcionário da erro... é porque não pode ser int?

Share this post


Link to post
Share on other sites
nunopicado

A primary key deve ser do tipo int, e de preferencia (para facilitar visto que te estás a iniciar) deve ser metido o Default como AutoIncrement.

O cpf deve ser um campo à parte, e não a primary key da tabela.

Permito-me duas considerações:

- Se o professor tem a estrutura da base de dados, estás a perder tempo. Ou a tua fica igual à dele por milagre, ou não vai funcionar.

- Estás a perder tempo com o telhado antes de concluires os alicerces. Se ainda não fizeste a primeira parte do programa, estares a tentar perceber a segunda é como quereres entender uma série apenas vendo o ultimo episódio.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

a primeira parte já esta pronta. Conclui com a ajuda do thoga31

E estou confundido os projetos, este que tem duas partes não tem banco de dados na faculdade. Só não entendi como ele vai testar o meu programa se o banco de dados esta aqui no meu pc....

Share this post


Link to post
Share on other sites
nunopicado

a primeira parte já esta pronta. Conclui com a ajuda do thoga31

E estou confundido os projetos, este que tem duas partes não tem banco de dados na faculdade. Só não entendi como ele vai testar o meu programa se o banco de dados esta aqui no meu pc....

Vou dar tilt...

Qual programa é que ele vai testar? O que tem duas partes, ou este agora?

Anyway, as bases de dados copiam-se. Se ele tem lá, tem de ta dar para poderes fazer o programa de acordo com ela. Se és tu que a tens, tens de lhe dar uma cópia para ele testar o programa.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

isto ele vai testar o que tem duas partes em que eu tenho que fazer o BD em MYSQL. estou tentando inserir dados e da erro

mysql> insert into funcionario(cpf,nome,idade,salario) valures (1111111111,"Maria de Jesus",26,7000);

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'valures (1111111111,"Maria de Jesus",26,7000)' at line 1

fiz estas configurações:

create table funcionario(

id int(5) primary key not null auto_increment,

cpf int(11) not null,

nome varchar(30) not null,

idade int(2) not null,

salario int(8) not null);

Edited by Hercles
Adicionadas tags GeShi

Share this post


Link to post
Share on other sites
nunopicado

valures não.

values sim

  • Vote 1

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

Bom já tenho este banco - Empresa- tabela - Funcionario - como faço pra abrir consultar e alterar pelo program funcionario Lazarus?

+----+------------+------------------------+-------+---------+

| id | cpf | nome | idade | salario |

+----+------------+------------------------+-------+---------+

| 1 | 2147483647 | Maria de Jesus | 26 | 7000 |

| 2 | 2147483647 | Tania Vasconcelos | 28 | 8000 |

| 3 | 2147483647 | Mônica Vasconcelos | 28 | 9000 |

| 4 | 2147483647 | Luzinete Soares de mel | 38 | 19000 |

| 5 | 2147483647 | carla Soares de mel | 38 | 5000 |

| 6 | 2147483647 | Ana Botafogo | 38 | 15000 |

+----+------------+------------------------+-------+---------+

configuração:

mysql> describe funcionario;

+---------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+---------+-------------+------+-----+---------+----------------+

| id | int(5) | NO | PRI | NULL | auto_increment |

| cpf | int(11) | NO | | NULL | |

| nome | varchar(30) | NO | | NULL | |

| idade | int(3) | NO | | NULL | |

| salario | int(8) | NO | | NULL | |

+---------+-------------+------+-----+---------+----------------+

Share this post


Link to post
Share on other sites
nunopicado

Salario como int é capaz de não ser boa ideia. Não há centimos/centavos/whatever? Como metes por exemplo 120.50 Reais?

Usa antes o tipo Float

O nome com apenas 30 caracteres também é capaz de ser pouco, mas pronto, é para testes, passa.

Para acederes ao MySQL, precisas de usar um componente específico. Podes usar o SqlDB que vem com o Lazarus, ou instalar o mil vezes melhor ZeosLib (já tinhamos falado sobre isso). Já pensaste qual vais escolher?


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

vou mudar pra float. vamos tentar este SqlDB.... acho complicado instalar as coisas em linux

Share this post


Link to post
Share on other sites
nunopicado

Não disse instalar em Linux... É instalar no Lazarus! São coisas diferentes!

Mas testa então com o SqlDB. Se houver dúvidas, apita!


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

Olá!!! o tutor da faculdade disse que tenho que enviar as tabelas do BD junto com o programa do aonde eu consigo as tabelas que fiz no MYSQL Linux?

Share this post


Link to post
Share on other sites
nunopicado

Olá!!! o tutor da faculdade disse que tenho que enviar as tabelas do BD junto com o programa do aonde eu consigo as tabelas que fiz no MYSQL Linux?

Hercles: Tens de começar a prestar atenção no que te dizemos aqui no forum...

Já te respondi a isso ainda antes de perguntares.

https://www.portugal-a-programar.pt/topic/62757-lazarus-runtime-error-217/page__hl__mysqldump?do=findComment?comment=527835

Outra coisa: Tens de começar a organizar as tuas questões. Já estamos a falar do mesmo assunto em 3 ou 4 tópicos. Se não dispersares, tens tudo junto e mais fácil de consultar.

Nós estamos aqui para ajudar, porque gostamos de o fazer, mas ninguém gosta de ajudar quando os ensinamentos que tenta passar estão a cair em saco roto. Lê o que nós pomos, expõe as dúvidas, mas tenta sempre analisar as respostas para delas extraíres o máximo... Senão, não adianta!

Edited by nunopicado

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

quando uso esta linha da erro:

mysqldump -h127.0.0.1 -uroot -padmin --single-transaction --default-character-set=utf8 --result-file="c:\copia_bd.sql" BDNome

erro:

mysql> mysqldump -h127.0.0.1 -uroot -padmin --single-transaction --default-character-set=utf8 --result-file="c:\copia_bd.sql" empresa

-> mysqldump -h127.0.0.1 -uroot -padmin --single-transaction --default-character-set=utf8 --result-file="c:\copia_bd.sql" empresa;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

'mysqldump -h127.0.0.1 -uroot -padmin --single-transaction --default-character-s' at line 1

Share this post


Link to post
Share on other sites
nunopicado

Hercles:

mysqldump é um comando do sistema operativo.

Eu falei-te do mysqldump.exe assim como do mysql.exe.

Não o podes correr a partir do mysql directamente. Tem de ser fora.

Procura onde tens o ficheiro mysqldump e executa-o aí.

Tens de lhe alterar os parametros para o que tu usas. root e admin são passwords genéricas, se não são essas que usas, deves meter as tuas.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
Hercles

usei isto ==> mysqldump -u root -p empresa>/home/bruno/empresa.tx - dá no mesmo? mas quando eu clico abre o arquivo no bloco de notas é isto mesmo?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.