Vous êtes sur la page 1sur 8

CentraldoAluno

(11)3253

atendimento@tdstecnologiasp.com.br

8121

Vista/SP
INCIO

BlogdaTDS
Fiquepordentrodoqueaconteceporaqui!

03
set

Av.Paulista,3262andarSalas23,24,25Bela

SOBREATDS

TREINAMENTOS

DESENVOLVIMENTO

SERVIOS

BLOGDATDS

CONTATO

Vocestaqui: Incio ConhecendoBibliotecaFireDACde


acessoadadosParteI

ConhecendoBibliotecaFireDACdeacessoadadosParte
I
Olatodos,hojeiremosiniciarumasriedeartigossobreessapoderosabibliotecadeacessoadados,o
FireDac,abaixoireifalarsobreabibliotecaeiniciaremoscomumexemplosimplesdeacessoadados,mas
teremosdiversosexemplossemanalmentesobreoFiredac,porissonodeixedeacompanharoBlogdaTDS,
partiremosdoacessoaosdadosatcomoconvertersuasaplicaesdeBDEouDBExpressparaFireDAC.

DescriodaBiblioteca
AFireDACumabibliotecadeAcessoUniversalaDadosparaodesenvolvimentodeaplicaesparamltiplos
dispositivosconectadosabancosdedadoscorporativos.Comsuapoderosaarquiteturauniversal,aFireDAC
possibilitaacessodireto,nativoedealtavelocidadedoDelphiedoC++BuilderaInterBase,SQLite,MySQL,
SQLServer,Oracle,PostgreSQL,DB2,SQLAnywhere,AdvantageDB,Firebird,Access,Informix,DataSnap,
dentreoutros.

AFireDACumacamadapoderosaeaindaassimfcildeutilizar,quesuporta,abstraiesimplificaoacessoa
dados,fornecendotodasasfunesnecessriasparaconstruiraplicaesdealtacargademundoreal.A
FireDACforneceumAPIcomumparaacessoadistintosbackendsdebancosdedados,semprejuzodo
acessoafunesespecficasdebancodedadoseseminterferirnodesempenho.UseaFireDACnas
aplicaesAndroid,Windows,OSXeiOSquevocestejadesenvolvendoparaPCs,tabletesesmartphones.

CaractersticasdaBiblioteca
OsdatasetsdaFireDACsoconstrudossobreumpoderosoenginedeacessoadados.Esteenginede
tamanhoreduzidoefetivoeflexvel,podendoserusadodiretamentenasaplicaes,servindocomouma
poderosafundaoparaoAPIdosdatasets.Oengineconsistedoscomponentesdodatasetedascamadas
nocomponentes,representadaspelosflexveisAPIsorientadosaobjetos.
ClassesTDataSetdescendentesdefcilutilizao,incluindoTADQuery,TADMemTable,TADStoredProce
TADTable
ClassesdedatasetaltamentecompatveiscomdatasetsoriginaisdeBDEeClientDataSet
Umdosmaisrpidosdatasetsinmemory,comordenao,filtragem,agregao,ndicesfiltradosede
expresso,persistnciaetc.
EngineSQLlocalparaexecuodequeriesSQLnosdatasets

Acessoadadosdealtodesempenho
Oacessoaobancodedadosotimizadoutilizandovriastcnicasdistintasnormalmenteencontradasapenas
emcomponentesespecficosdebancosdedados,oquepermitequevocobtenhamaiorvelocidadede
acessoadadosjnoprimeiroinstante.
Mododejaneladedadosdetemporeal,(LiveDataWindow)quepermitenavegardatasetsgrandesdemodo
rpidoebidirecional
ExecuodeComandosdeManipulaodeDados(DML)emarrayeCommandBatchesparaexecuoem
loteereduodotrfegoderede
Buscacomrowsetcustomizveleflexvel
Suportediretoaexecuodecomandoassncrono,timeoutecancelamentodeexecuodecomando
Geraoeexecuoautomtica,eficienteesofisticadadeatualizaesdecomando
Mododeatualizaesemcache,comapossibilidadederastrearasmudanascorrelacionadasdevrios
datasets,comatualizaesemcascata
Suporteplenoacamposdeautoincremento,incluindoaquelesbaseadosemgeradoresegatilhosdetabelas

APIUnificado
AFireDACfornecevriasfunesqueajudamaabstrairasdiferenasentresistemasdebancodedados,
facilitandoatarefadeescrevercdigosemsepreocuparcomdiferentesdialetosdeDBMSououtrasdiferenas
sutisdestes.
AbstraodedialetoSQLatravsdesequnciasdeescape,declaraescondicionaisemacrosdaFireDAC
Unificaodetiposdedadoscommapeamentoflexveleajustveldetiposdedados
Relatriosdeerrosunificados,incluindoinformaesdeerrosespecficosouindependentesdeDBMS
Suporteunificadoatransaes,comtransaesdereadeupdateseparadas,eacessoatodoopoderdo
suporteatransaesespecficasdoInterBaseedoFirebird
SuporteamltiplascodificaesUnicodeeANSI
Recuperaoautomticadaconexo,querestabeleceautomaticamenteaconexoemcasodeinstabilidade
doambiente
Mododeconexooffline,quepermitequeaaplicaocontinueatrabalharsemumaconexofsicaaum
bancodedados
Eventosdebancodedadosesuporteanotificaes
SuporteascriptsSQLunificados
Capacidadesampliadasdebuscademetadados

Buscar...

TPICOS RECENTES

FireMonkey(FMX)Framework
(PARTE2)
FireMonkey(FMX)Framework
(PARTE1)
RESTCLIENT(PARTII)
ConhecendoBibliotecaFireDACde
acessoadadosParteI
RESTCLIENT(PART1)

ARQUIVOS

outubro2014
setembro2014
agosto2014
julho2014
junho2014

CATEGORIAS

Artigos
Comunicados
Uncategorized

Capacidadesampliadasdebuscademetadados
SuportenativodeDriver
AlmdeconectividadeuniversalaDBMSs,aFireDACtambmsuportadriversnativosdebancosdedados,
dandoavocacessodeprimeiralinhaspoderosaseavanadasfunesquetornamcadabancodedados
nico.
AcessoaAPIsefunesespecficasdevriosbancosdedados:
MySQL
MicrosoftSQLServer
OracleDatabase
InterBase
PostgreSQL
DataSnap
SQLite
SybaseSQLAnywhere
MicrosoftAccess
IBMDB2Server
Informix
Firebird
AdvantageDatabase
TodasascaractersticasacimasdemonstramoquantograndiosoaBibliotecaFiredac,todasessas
informaessobaseadasnaversoXE6,aqualaTDSestutilizandoemseustreinamentos,noinstalamos
aversoXE7,comissoqualqueralteraoque,esehouver,estareicomentandonosprximosartigos.Agora
vamoscolocaramonamassaedesenvolvernossaprimeiraaplicaoutilizandoDelphiXE6eFireDac.Em
nossoprimeiroexemploiremosfazerumaconexosimples.
Informaesimportantesparaoprojetoqueiremosdesenvolverlogoaseguir,iremostrabalharcomobancode
dadosFirebird2.5usandoobancodedadosquevemcomoexemploemsuainstalao,queobancode
dadosEmployee.fdbeoDelphiXE6.

AbraoDelphievamosiniciarnossoexemplopassoapasso
Menu>File>New>VCLFormsApplicationDelphi

IremosSalvarosarquivosquefazempartedenossaaplicao,primeiramenteaUnit:
Unit>UAcessoDados
Projeto>PAcessoDados
ApssalvarosarquivosiremosrenomearoForm
FormFrmAcessoDados
Aplicaodeveestardestaforma


ApsiremosadicionarnossosfamososcomponentesDBNavigatoreDBGrid,comasseguintesmudanasde
Propriedades.
ODBNavigatoriremosmudarapropriedadeAlingparaAltop
ODBGridiremosmudarapropriedadeAlingparaAlClient
Aplicaodeveestardestaforma

ComissoiremoscomearatrabalharcomaBibliotecaFireDac,adicioneoscomponents:
TFDConnectioneTFDQueryenossocanaldecomunicaocomoscompoentesDataWareoDataSource.
Aplicaodeveestardestaforma

Agorairemoscomearaconfiguraroacessoadados,logicamentepeloocomponentedeacessoadadoso
FDConnectio1.
IremosmudarapropriedadenamedoFDConnectionparaconexoealterarapropriedadeLoginPromptde
TrueparaFalse,paranoficarsolicitandoousurioesenhadobancodedados.
Aps,deumduploclicknocomponenteconexo,poisnestemomentojmudamosonomedocomponentede
conexo,comissoiraparecerateladeconfigurao:
Aplicaodeveestardestaforma


NoPrintacimapodemosobservarapropriedadeselecionadaDriverID,aiqueselecionamosodriverde
acessoabancodedadosqueiremosutilizar,lembrandoque,naespecificaoacimadabibliotecatemosa
descriodosbancossuportados,maiscomomencioneiacima,iremostrabalharcomoFireBirdcomobanco
dedadosemnossaaplicao,comissotemosasconfiguraesabaixo,primeiroselecioneoDriveFBque
correspondeaoFireBird.
Apsteremosqueinformaasseguintespropriedades
ObancodedadosqueiremosusarnapropriedadeDataBase
InformarousuriodobancodedadosnapropriedadeUser_Name
InformarasenhadobancodedadosnapropriedadePassword

Aplicaodeveestardestaforma

Aps,clicknobotoTestparaconferirseconseguimosestabeleceraconexocomnossobancodedados,
deveraparecerumateladeconfirmaocomosdadosqueinformamosusurioesenha,eaisclicarno
botook,eteremosamensagemdaconexoestabelecidacomsucesso.
Aplicaodeveestardestaforma

Apartirdestemomentotemosaconexoestabelecidacomobancodedadoseiremosexecutarnossoselect
simplesnatabelaCUSTOMERquetemosnobancodedadosdeexemplo,quevemcomainstalaodo
Firebird,utilizaremosocomponenteTFDQueryondecomearemosamodificalo.Umainformaointeressante
queosnovoscomponentesdoDelphiseinterligamautomaticamente,porexemplo,seseguiuaordemde

queosnovoscomponentesdoDelphiseinterligamautomaticamente,porexemplo,seseguiuaordemde
colocaroTFDConnectionprimeiroedepoisoTFDQuery,irperceberqueapropriedadeConnectiondo
TFDQueryestarpreenchidacomoconexo.
Aps,teremosqueinformaasseguintespropriedades.
MudaremosapropriedadeNamedoFDQueryparaFDQCustomer
Aps,daremosumduploclicknocomponenteFDQCustomerparaabriroQueryEditorondecolocaremosa
instruoSelect*FromCUSTOMER.
Aplicaodeveestardestaforma

Clicknobotoexecuteparaconferirsenossainstruoestcorreta,estandotudocerto,teremosoretornodos
dadosnoGriddaAbaRecordSet.
Aplicaodeveestardestaforma

Aps,clicknobotoOkeiremosconfigurarnossoDataSource
Informaremosasseguintespropriedades
MudaremosapropriedadeNamedoDataSourceparaDSCustomer
MudaremosapropriedadeDataSetapontandoparaoFDQCustomer
AgorairemosapontaraspropriedadesDataSourcedoDBNavigatoredoDBGridparaoDSCustomer.

Aplicaodeveestardestaforma


Faltaadicionardoiscomponentesessenciaisparanossaaplicaoserexecutada,sooscomponentes
TFDPhysFBDriverLink,queocomponentequevinculaoDriverFB,ouseja,doFirebirdanossaaplicaoeo
componenteTFDGUIxWaitCursor,queocomponente,quepermitecontrolarmosocursordeespera.
Observemquenoprecisamosalterarnadaneles,somenteadicionalos,elessoobrigatriosem
nossasaplicaes,quandoutilizamosaBibliotecaFireDacoTFDPhysFBDriverLinkusadopara
acessoaofirebird,nosdemaisbancossuportado,existeoDriverLinkprprio.

Aplicaodeveestardestaforma

ComissoiremosselecionaroFrmAcessoDadosecodificaroseventosOnShoweOnClosecomoscdigos
abaixo.
CdigodoEventoOnShow
procedureTFrmAcessoDados.FormShow(Sender:TObject)
begin
FDQCustomer.Open()
end

CdigodoEventoOnClose
procedureTFrmAcessoDados.FormClose(Sender:TObjectvarAction:TCloseAction)
begin
conexao.Close
FDQCustomer.Close
end

Aplicaodeveestardestaforma


TeclandooF9doseuteclado,teremosacompilaodonossocdigoeaexecuodenossaaplicao.
Aplicaodeveestardestaforma

ChegamosconclusodenossoexemplodeconexodedadoscomaBibliotecaFiredac.

EsseoprimeirodevriosartigosqueteremosemnossoBlog,todasemanaumartigodiferenteondeiremos
exploraromximoabibliotecaFireDAC.

Baixeoprojetodesteartigo.
Projeto

SobreoAutor
LeandroMatos
ProjectManagerdaTDSTecnologia
TrabalhandocomDelphideste1997
InstrutorDelphiCertificado
CertificadoMasternaferramentaDelphi
CertificadoInstructornaferramentaDelphi

2comentrios

tdstecnologiasp

Artigos

2ResponsestoConhecendoBibliotecaFireDACdeacessoadadosParteI

Thiago
Gobatti

Atendimentooffline

Leandro,boanoite.
Muitobomocontedo,estadeparabnspelamatria.
EstoupensandoemmigrarparaoXe7paracomearadesvendarocaminhodaspedraspara
aplataformadoAndroid,tenhoumagrandedvida,porfavortentemeajudar.
HojetodaminhabasededadosfeitaemMySQLpelafacilidadedeacessoviawebsitee
aplicaoDesktop,minhaduvidasepossvelfazerumaaplicaoparaAndroidequese
conectacomumabasededadosMysql?
Obrigadoenovamenteparabns.
ThiagoGobatti
2denovembrode2014at8:07
pm

Responder

Artigomuitobom.Excelentedidtica.Esperoansiosamenteasegundaparte.
2dedezembrode2014at2:51

Responder

pm
GilbertoH.
DeSouza

Deixeumaresposta

OseuendereodeemailnoserpublicadoCamposobrigatriosso
marcados*
Nome*

Email*

Site

Comentrio

Publicarcomentrio

Avisemesobrecomentriosseguintesporemail.

Avisemesobrenovaspublicaesporemail.

RESTCLIENT(PART1)

Design&DesenvolvimentoSummitDesign

RESTCLIENT(PARTII)

Vous aimerez peut-être aussi