Conectarea sgbd acces la surse de date externe

7
Echipa: Irimia Diana Pantea Calin Conectarea SGBD Acces la surse de date externe

Transcript of Conectarea sgbd acces la surse de date externe

Page 1: Conectarea sgbd acces la surse de date externe

Echipa: Irimia Diana Pantea Calin

Conectarea SGBD Acces la surse de

date externe

Page 2: Conectarea sgbd acces la surse de date externe

Odată cu creşterea spectaculoasă a dimensiunii BD în VFP, extinderea numărului de utilizatori ai bazei, apare drept imperios necesară trecerea la o arhitectură client-server pe două sau mai multe straturi. Microsoft recomandă

migrarea spre SQL Server. Serverul de BD pe care poate fi "deplasată" baza de date Fox poate fi oricare

din cele importante (Oracle, Sysbase, Informix, DB2), câtă vreme prin mecanismul ODBC

conexiunea nu mai este o problemă.

Page 3: Conectarea sgbd acces la surse de date externe

Open Database Connectivity (ODBC) reprezintă o interfaţă standard care permite unei aplicaţii să acceseze date din surse diferite: Oracle, MS SQL Server, DB2, Informix, MS Access, dBase ş.a. Iniţiativa ODBC a aparţinut companiei Microsoft, având acceptul şi concursul firmelor de soft care produc servere BD. Interfaţa ODBC defineşte:

• o bibliotecă de apeluri de funcţii care permit unei aplicaţii să se conecteze la o sursă de date, să execute fraze SQL şi să primească rezultatele acestora;

• o modalitate standard de conectare la o sursă (BD) de date externă;

• o modalitate standard de reprezentare a tipurilor de date.

• Mai trebuie menţionat că această interfaţă mai permite şi recepţionarea, tot printr-un mecanism standardizat, a erorilor generate de motoarele diferitelor servere de baze de date care gestionează BD sursă.

Drivere ODBC

Page 4: Conectarea sgbd acces la surse de date externe

• trebuie apelat administratorul surselor de date ODBC (din Control Panel - ODBC Data Source). Din cadrul de pagină (User/System/File)DataSourceName

• se alege butonul Add care lansează fereastra de dialog Add Data Source.

• Din lista de drivere ODBC se alege Oracle ODBC Driver

• completarea informaţiilor cerute în fereastra de dialog Oracle8 ODBC Setup( Data Source Name, UserId şi Service Name)

•  După selectarea butonului OK din ultima fereastră de dialog, numele sursei de date se va regăsi printre celelalte surse de date disponibile pe respectiva maşină.

Crearea unei surse de date Oracle prin ODBC

Page 5: Conectarea sgbd acces la surse de date externe

• O conexiune (un obiect de tip connection) poate fi asimilată definiţiei unei surse de date stocată într-o bază de date VFP.. Deschiderea unor astfel de sesiuni se realizează fie implicit prin remote views (tabele derivate la distanţă), fie explicit prin interfaţa de transfer SPT (SQL Pass-Through).

• Crearea şi configurarea unei asfel de conexiuni se poate realiza fie asistat, cu ajutorul Connection Designer-ului,, fie "manual", cu ajutorul comenzilor CREATE CONNECTION şi DBSETPROP (parametrii de configurare ai unui obiect de tip connection se stochează în dicţionarul bazei de date)

• Legarea VFP cu Oracle, chiar în condiţiile în care tabelele bazei sunt, în totalitate, gestionate în Oracle, presupune crearea unei BD. Denumită VFPOracle, baza de date VFP va conţine conexiuni (connections) şi, eventual, tabele derivate "la distanţă".

• Precizarea sursei de date se poate face fie prin indicarea explicită a informaţiilor referitoare la: Data source, Userid, Password, Database (selectând opţiunea Data source, Userid, Password), fie prin completarea unui şir de caractere (selectând opţiunea Connection string) care se compune, în cazul driver-ului pentru Oracle, din specificaţiile parametrilor: DSN pentru numele sursei de date ODBC, UID pentru identificatorul utilizatorului în a cărui schemă se găsesc datele ce se doresc a fi accesate, PWD parola utilizatorului, DBQ pentru precizarea bazei de date/serviciului Oracle.

Crearea unei conexiuni VisualFoxPro (client Oracle)

Page 6: Conectarea sgbd acces la surse de date externe

Procedura de conectare a unui client la un server Oracle se reduce în principal la următorii paşi:

1. Un program sau aplicaţie utilizator iniţiază o cerere de conectare trimiţând numele de utilizator, parola şi un nume de serviciu (service name), care poate fi asimilat unui alias al bazei de date destinaţie. Acest service nameeste mapat direct pe un descriptor de conectare (connect descriptor). 2. După ce semnificaţia numelui de serviciu este determinată, cererea de conectare este transmisă, prin protocolul de reţea existent, serviciului Listener de pe maşina server a cărui adresă a fost dedusă din descriptorul de conectare obţinut prin operaţia de mapare descrisă mai sus.3. Sesiunea de lucru dintre client şi serverul bazei de date nu este însă susţinută de către Listener, rolul acestuia limitându-se doar la redirecţionarea cererilor către instanţele bazelor de date cărora le sunt adresate. Astfel, când primeşte o cerere către o bază de date, Listenerul crează un proces server căruia îi predă controlul sesiunii deschise între server şi client.4. Adresa procesului nou creat este trimisă procesului de pe maşina clientului. Astfel, cele două procese (procesul utilizator - care a iniţiat cererea de conectare şi procesul server) vor comunica direct pe durata sesiunii fără a implica serviciul Listener.