exportați date din Baza de date în fișierul CSV

Microsoft Access (2007, 2003) | MySQL | Postgres | MS SQL Server | Oracle | Enterprise Data Publisher

SpatialKey necesită încărcarea și importul datelor printr-un fișier CSV înainte ca un set de date să poată fi importat. Am încercat să facem procesul de import cât mai distractiv și mai simplu posibil, dar SpatialKey nu vă poate ajuta să obțineți datele în format CSV. În multe cazuri, datele prețioase la care aveți nevoie de acces vor fi blocate în interiorul unei baze de date. Există mai multe tipuri de baze de date, și cele mai multe dintre ele au capabilități pentru a ajuta la a obține datele exportate într-un format CSV, dar ele sunt, de obicei specifice bazei de date în cauză.

acest obiectiv al acestui articol este de a examina cum să obțineți date într-un format CSV din multe dintre cele mai multe baze de date plop și sisteme de gestionare a bazelor de date de pe piață astăzi. Dacă nu aveți acces la baza de date în care se află datele dvs. și aveți un administrator de baze de date sau personal IT care generează rapoartele pentru dvs., transmiteți linkul la acest articol atunci când solicitați date pentru SpatialKey, deoarece le poate economisi și ceva timp.

vă rugăm să rețineți că acest articol se referă la utilizarea comenzilor SQL (Structured Query Language) necesare pentru a rula împotriva unei baze de date și este destinat utilizatorilor care sunt familiarizați cu SQL și instrumente pentru baza de date pe care o utilizează în mod obișnuit.

Microsoft Access:

Microsoft Access este o bază de date populară bazată pe fișiere utilizată de obicei de organizații mici cu un număr limitat de utilizatori și de persoane fizice. Datele MS Access pot fi accesate utilizând aplicația MS Access într-un mod vizual, precum și prin abordări tradiționale bazate pe SQL. Deoarece MS Access a suferit recent o schimbare majoră a interfeței cu utilizatorul, vom explora atât versiunile 2007, cât și 2003 ale aplicației (dacă lucrați cu o versiune mai veche, ar trebui să fie disponibile și tehnici similare).

Access 2007:

în prima figură (1.1) puteti vedea am deschis baza de date exemplu standard, care vine cu MS Access (numit Northwind). De asemenea, am selectat interogarea numită „Top zece comenzi după suma vânzărilor”. La această interogare, am adăugat informații despre adresa clientului, deoarece SpatialKey iubește datele care conțin date temporale (ora și data) și geospațiale (date care pot fi traduse într-o locație).

Fig. 1.1-MS Access 2007

de aici pot exporta cu ușurință rezultatele într-un fișier CSV:

  1. Faceți clic pe Tabel sau interogare pentru a exporta din (în acest exemplu „Top zece comenzi după suma vânzărilor” din stânga)
  2. Faceți clic pe fila „Date externe” din partea de sus a ferestrei
  3. în secțiunea „Export” faceți clic pe „fișier Text” și va apărea un expert
  4. alegeți o locație pentru csv exportat și denumiți fișierul (asigurați-vă că fișierul se termină cu un .CSV extension)
  5. Faceți clic pe OK
  6. pe ecranul următor asigurați-vă că opțiunea „delimitată” este selectată
  7. Faceți clic pe butonul „Advanced…” din stânga jos a ferestrei
  8. SpatialKey stochează datele sale ca Unicode UTF-8, trebuie să ne asigurăm că datele sunt exportate în acest format
    1. Faceți clic pe caseta derulantă de lângă Code-Page
    2. alegeți Unicode (UTF-8) în lista de opțiuni
    3. faceți clic pe OK
  9. înapoi la fereastra de text export faceți clic pe „Next”
  10. asigurați-vă că „Comma” este selectat ca delimitator și calificativ text este un citat dublu: „
  11. Faceți clic pe caseta de selectare” includeți numele câmpurilor pe primul rând „(trebuie selectat)
  12. Faceți clic pe”Următorul „
  13. verificați numele și locația fișierului și faceți clic pe”Finalizare”
  14. ecranul final al expertului vă oferă opțiunea de a salva pașii care permit reexportarea ușoară a datelor în viitor. Dacă anticipați necesitatea actualizării datelor în SpatialKey, mergeți mai departe și bifați caseta de selectare pentru a economisi ceva timp în viitor. Închideți fereastra când ați terminat.

dacă deschideți fișierul într-un editor de text, ar trebui să vedeți ceva de genul:

Fig. 1.2-exportat date Northwind

acum sunteți gata să încărcați noul fișier CSV în SpatialKey.

MS Access 2003:

următoarea figură prezintă versiunea mai veche MS Access 2003 a bazei de date Northwind. Voi exporta interogarea salvată numită” comenzi Qry ” din stânga.

Fig. 1.3-MS Access 2003 Northwind Database

permite exportul CSV:

  1. asigurați-vă că tabelul sau interogarea este selectată și faceți clic pe meniul fișier și alegeți „Export…”
  2. expertul de export va începe
  3. selectați locația pentru datele exportate și denumiți fișierul dvs. (asigurați-vă că setați extensia de fișier ca .csv)
  4. schimbați tipul de salvare ca: la „fișiere Text”
  5. Faceți clic pe „Export”

urmați pașii 6-14 din instrucțiunile Access 2007 de mai sus, deoarece acestea sunt aceleași din acest punct

acum sunteți gata să încărcați noul fișier CSV în SpatialKey.

MySQL:

MySQL este o bază de date populară open source pentru întreprinderi. Există multe instrumente disponibile pentru interacțiunea cu această bază de date, dar, la fel ca în majoritatea bazelor de date de întreprindere, cel mai mult acces se întâmplă prin intermediul limbajului de interogare structurat. Există câteva opțiuni pentru a exporta date în CSV din MySQL. Unele necesită instrumente terță parte, în timp ce altul folosește un instrument de linie de comandă (util pe mașinile Unix) și o opțiune finală prin SQL. Să aruncăm o privire la ultimele două opțiuni:

MySQL command line tool (pe Unix):

mysql -u exampleuser -p letmein exampledb -B -e "select * from\'person\';" | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > filename.csv

deci, ce înseamnă toate acestea?

  • mysql : fișierul executabil (ar trebui să fie în cazul în care MySQL este instalat)
  • -u exampleuser : un comutator și opțiunea pentru numele de utilizator pentru a executa SQL cu
  • -p letmein : un comutator și opțiunea pentru parola utilizatorului
  • exampledb : baza de date pentru a rula SQL împotriva
  • -B : instruiește că ieșirea ar trebui să fie delimitat fila (vom converti acest lucru la virgule mai târziu în comanda)
  • -e „instrucțiunea sql aici” : instrucțiunea SQL pentru a rula returnarea datelor
  • | sed ‘s/\T/”,”/G;S/^/”/;S/$/”/;S/\N//G’ : sed este un procesor flux Unix, în esență, permite transformări în acest caz. Aici avem patru comenzi sed care schimbă filele în ghilimele duble, adaugă ghilimele duble la începutul și sfârșitul fiecărei linii și adaugă un nou marker de linie la sfârșitul fiecărei linii.
  • > Nume fișier.csv: afișează rezultatele în fișierul numit nume de fișier.csv

acum sunteți gata să încărcați noul fișier CSV în SpatialKey.

sintaxa MySQL SQL:

SELECT column_a,column_b,column_c+column_d INTO OUTFILE '/tmp/result.csv'FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'LINES TERMINATED BY '\n'FROM test_table;

instrucțiunea MySQL select utilizează o comandă INTO OUTFILE pentru a afișa rezultatele SQL select într-un fișier (în acest caz/tmp / rezultat.csv).

câteva note:

  • În ambele cazuri, fișierul este salvat într-o locație locală de unde este rulată baza de date (pe aceeași mașină sau pe o montare/Unitate disponibilă pentru mașină)
  • rândul de antet va trebui adăugat la ambele fișiere (care se poate face folosind orice editor de text sau program de calcul tabelar)

acum sunteți gata să încărcați noul fișier CSV în SpatialKey.

Postgres:

Postgres este o altă bază de date populară open source pentru întreprinderi. Similar în natură cu MySQL, există multe instrumente terțe (inclusiv PGAdmin de la Postgres) pentru gestionarea și administrarea bazei de date. Cel mai bun pariu pentru exportul de date CSV din Postgres este folosind o comandă SQL specifică Postgres numită copiere:

COPY (SELECT column_a,column_b FROM whatever) TO '/tmp/dump.csv' WITH CSV HEADER

această comandă este extrem de rapidă și produce un fișier CSV formatat corespunzător, inclusiv anteturile.

acum sunteți gata să încărcați noul fișier CSV în SpatialKey.

MS SQL Server:

SQL Server este o bază de date disponibilă comercial de la Microsoft (există o versiune mai mică, mai puțin prezentată, numită SQL Server Express, care este disponibilă pentru descărcare gratuită). SQL Server este o bază de date gata de întreprindere utilizată de multe companii din întreaga lume. De-a lungul anilor au existat multe instrumente de management atât de la terți, cât și de la Microsoft (Enterprise Manager, Management Studio și prin MS Developer Studio, de exemplu). Două opțiuni pentru exportul ca CSV de la un server MS SQL sunt utilizarea instrumentului de linie de comandă BPC (Bulk Copy Program) sau prin servicii de transformare a datelor.

BCP:

programul de copiere în bloc poate fi executat dintr-o linie de comandă sau prin SQL.

  • linie de comandă:
    • BCP<Nume tabel >out < Nume fișier.csv> -c -t, -U <user name> -P <password> -S<server name>
    • Switches:
      • -c : export as ASCII with a tab delimiter and carriage return/line feed line terminator
      • -t, : override the tab delimiter with a comma
      • -U : username
      • -P : password
      • -S : server to connect to
  • SQL:
    • MS SQL Server are o comandă Transact-SQL numită xp_cmdshell, această comandă vă permite să executați executabile din linia de comandă din SQL
    • xp_cmdshell BCP <Nume tabel> out <numele fișierului.csv > -c-t, -T-S<nume server>
      • rețineți că am schimbat-U și – P la a-T care utilizează o conexiune de încredere ca suntem, probabil, autentificarea la mașină SQL server deja pentru a rula comanda SQL.

DTS:
pachetele DTS pot fi create folosind scripturi SQL sau printr-o interfață de utilizator MS.

  1. Din Enterprise Manager alegeți>Wizards>transformarea datelor> exportați date
  2. alegeți baza de date sursă
  3. pentru destinație selectați fișierul Text și specificați fișierul de destinație și numele fișierului cu un .extensia csv
  4. setați tabelul sau interogarea pentru a trage datele din
  5. setați opțiunea ca primul rând să conțină informații despre coloană
  6. pe ecran pentru a selecta delimitatorul, asigurați-vă că este selectată virgula
  7. rulați pachetul

acum sunteți gata să încărcați noul fișier CSV în SpatialKey.

Oracle:

Oracle este o bază de date disponibilă comercial, care are un număr mare de persoane în companii mari. Ca SQL Server, Oracle este o bază de date gata întreprindere. Opțiunile pentru extragerea în CSV folosind Oracle includ utilizarea Oracle SQL Developer (un instrument gratuit de la Oracle) și utilizarea directă PL/SQL (în general prin crearea unei proceduri stocate, deoarece este un pic mai mult bazat pe cod decât celelalte soluții de baze de date).

Oracle SQL Developer:

acesta este de departe cel mai simplu mod pentru cineva care nu este familiarizat cu procedurile complexe PL / SQL stocate pentru a exporta date.

o modalitate de a face acest lucru este să creați un raport în SQL Developer și să exportați rezultatele

  1. odată ce raportul este creat și rulat, faceți clic dreapta pe grila de rezultate și alegeți „Export” din meniul contextual
  2. în ecranul următor selectați CSV ca format și introduceți numele fișierului.csv și locație

de asemenea, puteți exporta un singur tabel prin:

  1. faceți clic dreapta pe numele tabelului în vizualizarea arborescentă obiect.
  2. selectați Export.
  3. selectați CSV. Fereastra Export date apare.
  4. Faceți clic pe fila Format.
  5. Selectați formatul ca: CSV
  6. introduceți un nume de fișier și o locație.
  7. Faceți clic pe fila coloane.
  8. verificați coloanele pe care doriți să le exportați
  9. Faceți clic pe fila Where și adăugați orice criterii necesare pentru a filtra datele
  10. Faceți clic pe Apply.

PL/SQL:

cel mai bun mod de a exporta date prin PL / SQL este de a crea o procedură stocată care utilizează comanda UTL_FILE.

pentru un exemplu excelent de procedură stocată pentru aceasta, vă rugăm să consultați acest articol la oracle.com. Rețineți că există o modificare recomandată a procedurii stocate inițial situată în comentarii (gestionează corect citarea datelor cu caractere CSV rezervate).

acum sunteți gata să încărcați noul fișier CSV în SpatialKey.

Enterprise Data Publisher:

pentru clienții noștri enterprise care au cantități mari de date pentru a importa sau au nevoie de date actualizate frecvent în SpatialKey, oferim un produs suplimentar numit Enterprise Data Publisher. Acesta este un produs bazat pe servicii care rulează în spatele scenei (și firewall-ul dvs.) care poate fi programat să împingă automat datele către SpatialKey din bazele dvs. de date. Dacă sunteți interesat să aflați mai multe despre capacitățile și costul editorului de date Enterprise, vă rugăm să ne trimiteți un e-mail accesând pagina noastră de Contact. Ne-ar fi bucuroși să vă ajute cu nevoile dvs. de date!

În concluzie, SpatialKey are nevoie de datele dvs. să strălucească! Producerea de date dintr-o bază de date existentă nu trebuie să fie o sarcină descurajantă, așa cum arată pașii enumerați mai sus și este un prim pas important pentru deblocarea cu adevărat a datelor!

Lasă un răspuns

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