Editând MySQL din… MS Access


Uneori îmi vine să mă zgârii pe faţă că nu m-am gândit mai rapid. Nu am să intru în detaliile situaţiei mele ci să ne imaginăm un cadru mai general: aveţi un anume proiect care foloseşte MySQL. Cum administraţi o bază de date din MySQL? Primul răspuns pe buzele multora este aproape sigur phpMyAdmin. În paranteză fie spus, mie îmi place foarte mult şi folosesc zilnic SQLyog. E teribil de (scump şi de) bun. Dar dacă clientul nu doreşte să îşi pună phpMyAdmin sau să îşi instaleze un alt program…??? El are deja MS Access din pachetul MS Office: înseamnă că poate edita datele! Mda… nici nu mi-a trecut prin gând că se poate, până nu mi-am pus întrebarea.

imagine

Dacă mai sunt şi alţii în această situaţie, haideţi să vedem cum se face. Mai întâi în Control Panel mergem la Administrative Tools. Mergem la Data Sources (ODBC) şi acolo, în tabul User DNS, dăm click pe Add, alegem din listă MySQL ODBC 5.1 Driver şi apăsăm pe Finish.

imagine

Va apare o fereastră ca mai jos. Dăm un nume, de regulă chiar numele bazei de date, iar mai jos dăm datele de identificare. Serverul (local sau nu), portul, numele de utilizator şi parola. Dacă sunt corecte, în lista Database vor apare bazele de date disponibile. Un click pe Test ne va arăta suplimentar că datele sunt OK. Gata! Am adăugat ceea ce trebuie pentru ca să putem trece la MS Access.

imagine

Creăm o bază de date goală. Va avea din start o tabelă goală. Dăm click dreapta pe ea şi alegem Import, apoi ODBC Database. În următorul pas vom vedea o fereastră cu două opţiuni. 1) Import the source data into a new table in the current database – va copia datele din baza de date MySQL în baza de date MS Access – nu ne dorim aşa ceva (pot fi cazuri în care dorim aşa ceva); 2) Link the data source by created a link table – da, aşa ceva vrem acum. Nu va fi o tabelă propriu-zisă MS Access, ci una care face trimitere spre MySQL. Alegem a doua variantă şi click pe OK.

imagine

Apare o altă fereastră, alegem tabul Machine Data Source de unde apoi alegem numele ales pentru baza de date definită via Data Sources.

 imagine

Alegem tabela (sau pe toate) şi am terminat. Priviţi baza de date de teste în phpMyAdmin.

imagine

Acum priviţi aceeaşi bază de date în MS Access (nu o copie a ei, ci chiar ea).

imagine

Din doar câteva clickuri MS Access mi-a construit un formular pentru editarea datelor.

imagine

Şi acum concluziile: MS Access nu e gândit pentru aşa ceva, evident, dar se descurcă (acceptând deci diverse surse, doar să fie via ODBC). Am făcut teste şi cu baze de date cu encoding UTF-8 şi a mers bine. Oricum, e pe riscul Dvs. De ce s-ar folosi aşa ceva? În unele proiecte s-ar putea să fie nevoie, mai ales dacă clientul e fan MS Access şi urăşte phpMyAdmin. Mai departe… umpleţi Dvs spaţiile… O bază de date MySQL (chiar şi remote!) poate fi uşor editată, se pot genera rapoarte, face interogări… totul din interfaţa – pentru unii – cunoscută din MS Access.


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (4 evaluări, media: 5,00 din 5)
Loading...Loading...

6 comentarii

  1. h2so4 spune:

    Asta inseamna ca pot lasa tabele in MySQL si gheorghe userul poate acesa tabela din MS Acces fara sa mai faca import, doar din setarile legate de baza?

  2. mircea.ciorgovean spune:

    Am facut un front end cu Ms Access si am legat tabelele dintr-o baza MySQL. Functioneaza dar dupa cca 60 secunde de inactivitate da o eroare: MySQL server has gone away (#2006).
    Daca baza MySQL este pe local host nu apare aceasta eroare.

  3. loredana spune:

    Mie nu imi arata in ODBC User DSN MySQL ODBC 5.1. Driver. De ce???

  4. pety spune:

    Se poate face si cu o suita gratuita :
    LIBREOFFICE 3 BASE – Connect to an external MYSQL Server using JDBC :
    http://www.youtube.com/watch?v=TYN4umIVnCo

  5. loredana spune:

    Ceva mai simplu nu este?????


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *