Você está na página 1de 11

ActiveDelphi

.: O site do programador Delphi! :.

FAQ Pesquisar Membros Grupos


Perfil Entrar e ver Mensagens Particulares

[Dica]Instalar Zeos 6.6.1 no Delphi 7

ActiveDelphi - Índice do Fórum -> Off-Topic

Autor Mensagem

adriano_servitec Enviada: Q ui Jul 05, 2007 11:21 am Assunto: [Dica]Instalar Ze os 6.6.1 no De lphi 7
C olaborador

Para instalar o novo ZEOS 6.6.1 no Delphi 7

R e gistrado: Se x ta-Fe ira, 1º


30 de Jane iro de 2004
Me nsage ns: 15477 Vai no menu do Delphi em Tools->Environment Options->(aba) Library
Localização: C uritiba-PR

E em Library Path adicione os seguntes caminhos do zeos

onde ta o componente\packages\delphi7
onde ta o componente\src\component
onde ta o componente\src\core
onde ta o componente\src\dbc
onde ta o componente\src\parsesql
onde ta o componente\src\plain


Vai no menu do delphi em File->Open e localize aonde esta a pasta do zeos que tenha o nome ZComponentDesign (Geralmente esta na Pasta Package
Dai eh soh compilar o componente e depois instalar, que vai apareçer a nova paleta do ZEOS no Delphi 7.

Boa sorte ai amigos.

Nota: Se alguem tiver ZEOS ja instalado no Delphi pode ser que tenha que remover este componente, ai tenha certeza que pode remover para nao ter

Para remover basta antes de instalar o novo ZEOS retirar os componentes do Libraty Path e depois remover o packages ZEOS no menu do Delphi em C
ao ZEOS e apertar no botao remover.

Bom tai a dica para que tiver dificuldade em instalar o ZEOS 6.6.1

Aki funcionou 100%

Adriano.
_________________
Meus aplicativos para Android Free.
https://play.google.com/store/search?q=couldsys

Voltar ao Topo

adriano_servitec
C olaborador Enviada: Q ui Nov 19, 2009 8:20 pm Assunto:

O mesmo processo acima serve para quem for instalar o zeos 6.6.5
R e gistrado: Se x ta-Fe ira,
30 de Jane iro de 2004
Me nsage ns: 15477
Localização: C uritiba-PR _________________
Meus aplicativos para Android Free.
https://play.google.com/store/search?q=couldsys

Voltar ao Topo

adriano_servitec Enviada: Q ui Nov 19, 2009 11:03 pm Assunto: Mais sobre os com pone nte s ZEO S
C olaborador

COMPONENTES DA BIBLIOTECA ZEOSLIB

R e gistrado: Se x ta-Fe ira, Paleta “Zeos Access” no Lazarus e no Delphi


30 de Jane iro de 2004
Me nsage ns: 15477
Localização: C uritiba-PR

1 TZConnection

É o componente que estabelece a conexão com o banco de dados e possui a capacidade de manipular ou controlar transações. Todo acesso ao banco é
qualquer que seja a conexão estabelecida, o acesso ao banco de dados é automaticamente realizado dentro de um contexto de uma transação. O entã
como “True”. Como o modo AutoCommit está sempre ativo então toda alteração efetuada por um comando SQL será confirmada no banco de dados pe
desabilitado, uma transação deve ser iniciada explicitamente, através do método StartTransaction. Dentro desta transação explícita é possível executar
modificações no banco de dados. Este grupo de comandos podem ser confirmados por um COMMIT. Se uma transação explícita é ativada o modo AutoC
chamada ao método Commit faz com que todas as modificações efetuadas dentro deste contexto explícito de transação sejam confirmadas. Ao contrári
modificações. Em ambos os casos o modo AutoCommit será setado para True, quando o método chamado (Commit ou Rollback) for concluído e a transa

1.1 Retaining

Após confirnar as modificações feitas em uma transação pelo COMMIT ou liberá-las (cancelá-las) pelo ROLLBACK a transação normalmente é concluída e
(query) ou de um procedimento armazenado (stored procedure) será descartado. Estes COMMITs e ROLLBACKs são chamados de “hard commit” ou “ha
pequena diferença, pois ZEOS não descarta o conjunto de dados, mas os mantém. Isto é obtido porque o ZEOS finaliza a transação com “soft commits”
TZConnection. Este método é chamado de “retaining”. Comandos COMMIT e ROLLBACK são executados com a adição do RETAINING. O método Retainin
inicia uma nova transação com todos os dados e recursos da transação anterior.

O método Retaining se torna um problema se usado em grandes tabelas. No caso do Firebird, limita o mecanismo garbage collection (coleta de lixo para
manutenção de um log de grande quantidade destes dados, que muitas vezes não serão mais necessários, degrada a performance. Apenas através de
seriam descartados com a conseqüente melhoria da performance. A Biblioteca de ZEOS só executa estes “hard” comandos quando do fechamento da co
de comandos enquanto uma conexão com o banco de dados encontra-se ativa. Assim sendo, a conexão com o banco de dados deveria, freqüentement
melhoria no desempenho.

1.2 Níveis de Isolamento de Transação do TZConnection

O componente de TZConnection provê quatro tipos predefinidos de Níveis de Isolamento de Transação (TIL):

1.2.1 tiRepeatableRead

Corresponde ao TIL "SNAPSHOT” que é o padrão de servidores Firebird. É uma combinação dos parâmetros de transação “concurrency” e “nowait”. Um
sofrerão influência se duas transações trabalharem simultaneamente sobre um mesmo registro. Se conflitos surgem quando dados estão sendo acessa
de outras transações não serão nofificadas. Este TIL atende amplamente aos requisitos do SQL padrão (SERIALIZABLE).

1.2.2 tiReadCommitted

Corresponde ao TIL “READ COMMITTED”. É uma combinação dos parâmetros de transação “read_committed”, “rec_version” e “nowait”. Este TIL reconh
confirmadas através do COMMIT. O parâmetro “rec_version” é responsável pelo comportamento de que os valores mais atuais que foram “commitados”
é responsável pelo comportamento de que não há espera pela liberação de um registro bloqueado. Neste nível o servidor é mais sobrecarregado que n
“refreshs” para adquirir estes valores novamente e iterativamente.

1.2.3 tiSerializable

Corresponde ao TIL “SNAPSHOT TABLE STABILITY”. É usado para obter um acesso exclusivo ao conjunto de dados retornado. Realizado pelo parâmetro
transação possa ter acesso aos dados gravados. Só a transação que está editando os dados pode ter acesso aos mesmos. Isto também previne, num
dados que estão sendo editados. Como este TIL é muito restritivo no que se refere ao acesso dr dados que estão sendo editados, deve ser aplicado co

1.2.4 tiNone

Nenhum TIL é usado para isolar a transação.

1.2.5 tiReadUncommitted

O TIL tiReadUncommitted não é suportado pelo Firebird. Se este TIL for usado, um erro será disparado e a transação não será isolada (de uso semelha

1.2.6 Recomendação

É aconselhável isolar transações com o nível de isolamento de transação tiRepeatableRead (o padrão de Firebird). Este TIL atende amplamente aos req
problemas relativos a consistência que pode surgir usando transações. Uma segunda escolha seria o tiReadCommitted, mas isto depende da aplicação
mais atual.

OBS.: Um TIL poder personalizado em tempo de execução. Exemplo:

ZConnection.TransactIsolationLevel := tiNone;

ZConnection.Properties.Add('isc_tpb_concurrency');

ZConnection.Properties.Add('isc_tpb_wait');

ZConnection.Connect;

:
:

1.3 Protocol (Protocolo)

Esta propriedade define qual o banco de dados a ser acessado.

1.4 Read-Only Connection

A conexão com o banco de dados mantida pelo TZConnection é setada, por padrão, como somente leitura (ReadOnly = True). Isto significa que a gravaç
deve setar esta propriedade para False (ReadOnly = False).

1.5 Codepages (código de página)

No TZConnection esta propriedade é setada através dos parâmetros “lc_ctype” ou “Codepage”. Estes parâmetros podem ser adicionados na pela prop

ZConection.Properties.Add ('lc_ctype=ISO8859_1');

ou

ZConnection.Properties.Add ('Codepage=ISO8859_1');

1.6 HostName

Normalmente o nome do servidor ou o endereço IP é atribuído a esta propriedade. Se o banco se encontrar na máquina local atribua-lhe o valor “localh

1.7 Connected

Esta propriedade ao ser setada como True, estabelece a conexão com o banco de dados, se tudo ocorrer bem. Evite ativar esta propriedade em tempo
estabelecer a conexão através de linhas de código, em tempo de execução, como por exemplo, no evento OnCreatedo formulário principal da aplicação

Exemplo de Uso do TZConnection:

(Este exemplo demonstra também a criação de um banco em tempo de execução)

ZConnection1.Database := 'd:\db1.fdb';

ZConnection1.Protocol := 'firebird-1.5';

ZConnection1.Properties.Add ('CreateNewDatabase=CREATE DATABASE ' +

QuotedStr ('d:\db1.fdb') + ' USER ' +

QuotedStr ('sysdba') + ' PASSWORD ' + QuotedStr ('masterkey') +

' PAGE_SIZE 4096 DEFAULT CHARACTER SET ISO8859_1');

ZConnection1.Connect;

1.8 Rolename (papéis)

A esta propriedade deve ser atribuído o papel que define os direitos e privilégios de um usuário ou grupo de usuários estabelecidos no banco de dados

2 TZQuery
2 TZQuery

É recomendado o uso do TZQuery no modo RequestLive associado com o componente TZUpdateSQL.

Se um conjunto de dados deve ser atualizável, então RequestLive deve ser setado como True e usado com o componente TZUpdateSQL, a fim de se us

Para retornar um conjunto de dados você deve chamar o método Open. Caso queira executar uma query de ação (que não retorna um recordset) cham

3 TZReadOnlyQuery

Este componente é similar ao TZQuery, porém com a diferença de que recordset retornado é somente leitura. Conseqüentemente não é possível o uso

4 TZUpdateSQL

O TZUpdateSQL fornece comandos SQL de atualização (update, insert, delete) para um conjunto de dados, recuperados por um TZQuery. Exemplo de u

ZQuery1.Sql:

SELECT * FROM names

UpdateSQL1.InsertSql:

INSERT INTO names (recno, name)

VALUES (:recno, :name)

UpdateSQL1.ModifySql:

UPDATE names

SET recno = :RecNo,

name = :name

WHERE recno = :old_recno

UpdateSQL1.DeleteSql:

DELETE FROM names

WHERE recno = :old_recno

4.1 O Prefixo de Parâmetro “OLD_”

O prefixo “old_” de um TFieldName possibilita o acesso ao valor do referido campo antes da sua modificação. Isto é útil quando se necessita comparar v

4.2 Consultas com Conjunto de Dados Somente Leitura

Geralmente um TZUpdateSQL está associado a um TZQuery que retorna um recordset somente leitura, porque as consultas, em sua maioria, retornam
visto anteriormente, é possível usar um TZUpdateSQL com um conjunto de dados atualizável (RequestLive).

4.3 Múltiplos Comandos com TZQuery e TZUpdateSQL


Os componentes TZQuery and TZUpdateSQL fornecem a possibilidade de executar internamente múltiplos comandos. Na propriedade SQL, eles podem
ponto-e-vírgula. Exemplo:

With Query do

Begin

Sql.Clear;

Sql.Add('DELETE FROM table1;');

Sql.Add('INSERT INTO table1 VALUES (:Val1, :Val2);');

Sql.Add('INSERT INTO table2 VALUES (:Val3, :Val2);');

Sql.Add('UPDATE table3 SET field1 = :Val4;');

Params.ParamByName('Val1').AsInteger := 123;

ExecSql;

End;

Os comandos serão executados obedecendo à ordem de seqüência. Também é possível agrupar internamente múltiplos comandos em um TZUpdateSql

5 TZTable

O componente TZTable deve ser utilizado apenas em aplicações cliente-servidor que manipulam pequenas tabelas, uma vez que todos os registros da t
equivalente ao comando SQL “SELECT * FROM ANYTABLE”.

6 TZStoredProc

O componente TZStoredProc fornece a possibilidade de executar um procedimento armazenado (stored procedure) de um banco de dados. Existem dois
conjunto de dados e o outro que não retorna. Não é necessário chamar o método Prepare antes de executar o método ExecProc.

6.1 Stored Procedures com Retorno de um Conjunto de Dados

Se um procedimento armazenado retorna um conjunto de dados, ele deve ser chamado através do método Open, semelhante a uma Query. Quando ex
atribuídos antes. O conjunto de dados retornado pode ser manipulado como o recordset de um TZQuery.

With spSumByName do

Begin

Close;

ParamByName ('Name').Value := 'DontKnowHow';

Open;

End;

6.2 Stored Procedures sem Retorno de um Conjunto de Dados

Se um procedimento armazenado não retorna um conjunto de dados, ele deve ser chamado através do método ExecProc. Quando existirem parâmetro

Exemplo (com conConnection.AutoCommit = True):

:
With spDeleteByName do

Begin

ParamByName ('Name').Value := 'DontKnowHow';

conConnection.StartTransaction;

Try

// execute StoredProc

ExecProc;

Except

conConnection.Rollback;

End;

conConnection.Commit;

End;

6.3 Stored Procedures Usando TZQuery

Executar um procedimento armazenado no TZQuery é de maneira similar a do componente TZStoredProc. Na propriedade SQL monte a string.

Exemplo (com conConnection.AutoCommit = True):

Zquery1.SQL:

EXECUTE PROCEDURE DeleteByName (:Name)

// using a TZQuery object

With qryDeleteByName do

Begin

ParamByName ('Name').Value := 'DontKnowHow';

conConnection.StartTransaction;

Try

ExecSQL; // execute SQL statement in TZQuery

Except

conConnection.Rollback;

End;

conConnection.Commit;

End;

7 Consultas Master/Detalhe (Master/Detail) com ZEOS

Você pode usar coomponentes TZQuery ou TZReadOnlyQuery para estabelecer uma conexão do tipo master/detalhe.

Master SQL

Zquery1.SQL:

SELECT master_id, feld1, feld2, feld3


FROM MasterTable

Detalhe SQL

Zquery1.SQL:

SELECT feld1, feld2, id

FROM detail

WHERE id = : master_id

7.1 Exemplo de inserção de um registro na Tabela Detalhe:

Procedure dmMasterDetail.qryDetailNewRecord (DataSet: TDataSet);

Begin

qryDetailMASTER_ID.Value := qryMasterID.Value;

End;

Exemplo de consulta de um registro na Tabela Detalhe, a partir da navegação na Tabela Master:

Procedure dmMasterDetail.dsMasterDataChange (Sender: TObject; Field: TField);

Begin

With qryDetail do

Begin

Close;

ParamByName('id').Value := qryMasterID.Value;

Open;

End;

End;

8 Cached Updates

Você tem que setar esta propriedade para True para os componentes TZTable, TZQuery ou TZStoredProc, nas situações de operação de atualização. De
ser facilmente “comitadas” através da execução dos métodos ApplyUpdates e CommitUpdates. O método CancelUpdates cancela as alterações efetuad

Exemplo (com AutoCommit = True em TZConnection):

With DataSet do

Begin

bEverythingOK := True;

CachedUpdates := True;

DataSet.First;

While (not DataSet.EOF) and (bEverythingOK) do

Begin

DataSet.Edit;

:
// process record

DataSet.Post;

DataSet.Next;

bEverythingOK := AFunctionForValidation;

End;

If bEverythingOK Then

Begin

ApplyUpdates;

CommitUpdates;

End

Else

CancelUpdates;

CachedUpdates := False;

End;

9 Campos BLOB

A biblioteca ZEOS é capaz de manipular campos Blob. A seguir um exemplo de como inserir, em uma tabela, um novo registro com um campo Blob. O cam
usar um Stream. Stream é útil para manipular e transferir dados binários em memória.

Var TheStream : TMemoryStream;

Begin

TheStream := TMemoryStream.Create;

Try

Image1.Picture.Bitmap.Savetostream(TheStream);

With qryBlobInsert do

Begin

Sql.Text := 'INSERT INTO EVENTS (EventNo,EVENT_PHOTO) ' +

'VALUES (100,:ThePicture)';

Params.Clear;

Params.CreateParam(ftBlob,'ThePicture', ptInput);

ParamByName('ThePicture').LoadfromStream(TheStream,ftBlob);

ExecSQL;

End;

Finally

TheStream.Free;

End;

End;

:
OBSERVAÇÕES:

1) Este tutorial é uma tradução e adaptação do seguinte tutorial:

The ZeosLib DBOs 6.1.5 - With Delphi 7 and Firebird 1.5

Disponível em: http://forum.zeoslib.net.ms/ (knowledge Base)

Description: An introduction to the basic usage of ZeosLib DBOs and Firebird basics

Author: Michael

Date: 20.09.2005, 12:42

Type: Tutorials Category ZeosLib Database Objects

2) Como o tutorial de Michael se baseou na aplicação do Zeos para o Firebird, talvez alguns recursos da biblioteca aqui descritos possam não ser supor

Em: 17/04/2006

Cohako Namara

Fontes originais do site


http://www.pauloamaral.com.br/cefetse.pa/zeoslib_tutorial.htm
_________________
Meus aplicativos para Android Free.
https://play.google.com/store/search?q=couldsys

Voltar ao Topo

adriano_servitec Enviada: Dom Jun 06, 2010 6:44 pm Assunto:


C olaborador

Para quem procura as DLL do Zeos,para postgre, mysql e firebird, deixei algumas diponiveis para baixa

R e gistrado: Se x ta-Fe ira, http://www.4shared.com/file/wSszKG1e/zeos_lib.html


30 de Jane iro de 2004
Me nsage ns: 15477 _________________
Localização: C uritiba-PR Meus aplicativos para Android Free.
https://play.google.com/store/search?q=couldsys

Voltar ao Topo

j@rod Enviada: Dom Jul 25, 2010 11:44 am Assunto:


Apre ndiz

Valeu Adriano,
R e gistrado: Dom ingo, 9
de O utubro de 2005
to querendo instalar a 6.6.6 no Delphi 7, tava estranando que nao vinha mais a pasta lib dentro do Zeos. Mas ai é atualizada essas libs?
Me nsage ns: 107

Voltar ao Topo

adriano_servitec Enviada: Dom Jul 25, 2010 12:24 pm Assunto:


C olaborador

j@rod escreveu:
Valeu Adriano,
R e gistrado: Se x ta-Fe ira,
30 de Jane iro de 2004 to querendo instalar a 6.6.6 no Delphi 7, tava estranando que nao vinha mais a pasta lib dentro do Zeos. Mas ai é atualizada essas libs?
Me nsage ns: 15477
Localização: C uritiba-PR Ola amigo...Não estão atualizadas, são as unicas que eu tenho que disponibilizei para o pessoal, não sei se funciona com todas versões do banco de d
testando para saber se vai dar certo amigo...

Boa sorte ai.


_________________
Meus aplicativos para Android Free.
https://play.google.com/store/search?q=couldsys

Voltar ao Topo

adriano_servitec Enviada: Sáb O ut 30, 2010 10:43 am Assunto:


C olaborador

Instalando zeos 6.6.6 no Delphi Xe...

R e gistrado: Se x ta-Fe ira, Para o pessoal que usa o zeos, no Xe tem que utilizar estes programas de SVN, para fazer o checkout do branch de teste do ZeosLib (svn://zeos.firmos
30 de Jane iro de 2004
Me nsage ns: 15477
Localização: C uritiba-PR Achei na net um passo a passo de como instalar
http://flovato.blogspot.com/2010/09/delphi-xe-2011-zeoslib-7-postgresql-90.html
_________________
Meus aplicativos para Android Free.
https://play.google.com/store/search?q=couldsys

Voltar ao Topo
Voltar ao Topo

adriano_servitec Enviada: Sáb Fe v 05, 2011 7:51 pm Assunto:


C olaborador

Para quem tiver a mesma dificuldade na hora de instalar o zeos no Delphi XE

R e gistrado: Se x ta-Fe ira, No meu caso aqui foi numa maquina com Windowes 7 64 bits Ultimate junto com Delphi XE
30 de Jane iro de 2004
Me nsage ns: 15477
Localização: C uritiba-PR
adriano_servitec escreveu:
Pessoal, faz um tempinho que estava querendo instalar o zeos no meu XE, porém ainda não consegui...

Segui o passo a passo aqui


http://flovato.blogspot.com/2010/09/delphi-xe-2011-zeoslib-7-postgresql-90.html
O build funciona normal mas....
Deu erro na hora de instalar

Falta um tal de ZParseSQL15.bpl, ja configurei o path do delphi, va vi que tenho esta bpl junto no path aonde esta apontando, mais ele continua reclamar

Ai vendo o que o autor escreve caso isso ocorra.

A forma mais prática e rápida de corrigir esse problema é colocando o diretório onde tal .BPL está localizada no PATH do sistema.
Observe que ao ser buildado os pacotes do ZeosLib, será criado um diretório chamado build localizado no subdiretório ".\packages\delphi15".
Assim, basta acrescentar esse caminho (D:\Delphi\Componentes\ZeosDBO2011\packages\delphi15\build) na lista de diretórios da variável de ambiente "P

Não entendi o que ele quis dizer ai.

Alguem pode me ajudar?


Resolvido, nem imaginava que o que o autor estava dizendo era no painel de controle do Windows...

Configurei e agora ja esta no meu delphi a paleta do zeos


_________________
Meus aplicativos para Android Free.
https://play.google.com/store/search?q=couldsys
Voltar ao Topo

HugoVictor Enviada: Se x Ago 19, 2011 9:41 am Assunto: R e : [Dica]Instalar Ze os 6.6.1 no De lphi 7
Novato

adriano_servitec escreveu:
R e gistrado: Se gunda- Para instalar o novo ZEOS 6.6.1 no Delphi 7
Fe ira, 15 de Agosto de
2011

Me nsage ns: 83
Vai no menu do Delphi em Tools->Environment Options->(aba) Library

E em Library Path adicione os seguntes caminhos do zeos

onde ta o componente\packages\delphi7
onde ta o componente\src\component
onde ta o componente\src\core
onde ta o componente\src\dbc
onde ta o componente\src\parsesql
onde ta o componente\src\plain


Vai no menu do delphi em File->Open e localize aonde esta a pasta do zeos que tenha o nome ZC omponentDesign (Geralmente esta na Pasta Packages d
Dai eh soh compilar o componente e depois instalar, que vai apareçer a nova paleta do ZEOS no Delphi 7.

Boa sorte ai amigos.

Nota: Se alguem tiver ZEOS ja instalado no Delphi pode ser que tenha que remover este componente, ai tenha certeza que pode remover para nao ter do

Para remover basta antes de instalar o novo ZEOS retirar os componentes do Libraty Path e depois remover o packages ZEOS no menu do Delphi em C o
relacionado ao ZEOS e apertar no botao remover.

Bom tai a dica para que tiver dificuldade em instalar o ZEOS 6.6.1

Aki funcionou 100%

Adriano.

caara, eu tava pesquisando isso faz tempo, agora que eu consegui !


muito obrigado mesmo
_________________
MSN; HugoVictor.1@Hotmail.com

if Topico = Resolvido then


begin
FrmTopico.Caption := '[RESOLVIDO]'
end;

Voltar ao Topo

Mostrar os tópicos ante riore s: Todas as mensagens Antigas primeiro Ir

ActiveDelphi - Índice do Fórum -> Off-Topic

Página 1 de 1

Powered by phpBB © 2001, 2005 phpBB Group


Traduzido por: Suporte phpBB