Eksporter Data fra Database TIL CSV-Fil

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

SpatialKey krever at data lastes opp og importeres ved HJELP AV EN CSV-fil før et datasett kan importeres. Vi har forsøkt å gjøre importprosessen så morsom og enkel som mulig, Men SpatialKey kan ikke hjelpe deg med å få dataene dine I CSV-format. I mange tilfeller at verdifulle data du trenger tilgang til vil bli låst inne i en database. Det finnes mange typer databaser, og de fleste av dem har evner til å hjelpe deg med å få dataene eksportert til ET CSV-format, men de er vanligvis spesifikke for databasen i spørsmålet.

dette målet med denne artikkelen er å undersøke hvordan man får data inn I ET CSV-format fra mange av de mer poppeldatabasene og databasebehandlingssystemene på markedet i dag. Hvis du ikke har tilgang til databasen der dataene ligger og har en databaseadministrator ELLER IT-ansatte som genererer rapportene for deg, pass på linken til denne artikkelen når du ber om data For SpatialKey som det kan spare dem litt tid også.Vær oppmerksom på at denne artikkelen omhandler BRUK Av SQL-kommandoene (Structured Query Language) som trengs for å kjøre mot en database, og er ment for brukere som er kjent MED SQL og verktøy for databasen de vanligvis bruker.

Microsoft Access:

Microsoft Access Er en populær filbasert database som vanligvis brukes av små organisasjoner med begrenset antall brukere og av enkeltpersoner også. MS Access-data kan nås ved HJELP AV MS Access-programmet på en visuell måte, så vel som gjennom tradisjonelle SQL – baserte tilnærminger. SIDEN MS Access nylig har gjennomgått en stor endring i brukergrensesnittet, vil VI utforske både 2007-og 2003-versjonene av programmet (hvis DU jobber med en eldre versjon, bør lignende teknikker også være tilgjengelige).

Access 2007:

I den første figuren (1.1) du kan se at jeg har åpnet standard eksempeldatabasen som følger MED MS Access (kalt Northwind). Jeg har også valgt spørringen kalt «Topp Ti Ordrer Etter Salgsbeløp». Til denne spørringen har jeg lagt til kundeadresseinformasjon siden SpatialKey elsker data som inneholder temporal (tid og dato) og geospatial (data som kan oversettes til et sted) data.

Fig. 1.1-MS Access 2007

Herfra kan jeg enkelt eksportere resultatene til EN CSV-fil:

  1. klikk på tabellen eller spørringen for å eksportere fra (I dette eksemplet «Topp Ti Ordrer Etter Salgsbeløp» til venstre)
  2. klikk på «Eksterne Data» – fanen øverst i vinduet
  3. i «Eksporter» – delen klikker Du På «Tekstfil» og en veiviser vises
  4. velg en plassering for den eksporterte csv-filen og gi filen et navn (kontroller at filen slutter med en .på den neste skjermen være sikker på at «Avgrenset» alternativet er valgt
  5. Klikk på «Avansert…»-knappen nederst til venstre i vinduet
  6. spatialkey lagrer sine data Som Unicode UTF-8, må vi sørge for at dataene eksporteres i dette formatet
    1. Klikk på rullegardinlisten Ved Siden Av Kode-Side
    2. Velg Unicode (UTF-8) i alternativlisten
    3. klikk ok
  7. tilbake på eksporter Tekstvinduet klikk «neste»
  8. Pass På at «Komma» er valgt som skilletegn og tekstkvalifikator er et dobbelt sitat: «
  9. Klikk på boksen «Inkluder Feltnavn På Første Rad»(bør velges)
  10. Klikk»Neste»
  11. Bekreft filnavnet og plasseringen og klikk «Fullfør»
  12. den siste skjermen i veiviseren gir deg muligheten til å lagre trinnene som muliggjør enkel re-eksport av data i fremtiden. Hvis du forventer å måtte oppdatere dataene I SpatialKey, gå videre og merk av i boksen for å spare tid i fremtiden. Lukk vinduet når du er ferdig.

hvis du åpner filen i en tekstredigerer, bør du se noe slikt:

Fig. 1.2-Eksporterte Northwind Data

nå er du klar til å laste opp DEN nye CSV-Filen Til SpatialKey.

MS Access 2003:

den neste figuren viser DEN eldre Ms Access 2003-versjonen av Northwind-databasen. Jeg vil eksportere den lagrede spørringen kalt «Orders Qry» til venstre.

Fig. 1.3-MS Access 2003 Northwind Database

lar eksportere CSV:

  1. Pass på at tabellen eller spørringen er valgt, og klikk På Fil-menyen og velg «Eksporter…»
  2. eksportveiviseren vil begynne
  3. Velg plasseringen for de eksporterte dataene og navngi filen din (pass på å angi filtypen som .Til «Tekstfiler»
  4. Klikk «Eksporter»

Følg trinnene 6-14 Under Access 2007 instruksjonene ovenfor, da de er de samme fra dette punktet på

nå er du klar til å laste opp den nye CSV-Filen Til SpatialKey.

MySQL:

MySQL Er en populær åpen kildekode enterprise ready database. Det er mange verktøy tilgjengelig for å samhandle med denne databasen, men som med de fleste bedriftsdatabaser skjer mest tilgang via Strukturert Spørrespråk. Det er noen alternativer for å eksportere data TIL CSV fra MySQL. Noen krever tredjepartsverktøy, mens en annen bruker et kommandolinjeverktøy (nyttig På Unix-maskiner) og et siste alternativ via SQL. La oss ta en titt på de to siste alternativene:

MySQL kommandolinjeverktøy (På Unix):

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

Så hva betyr alt dette?

  • mysql : den kjørbare filen (skal være Der MySQL er installert)
  • -u eksempelbruker : en bryter og alternativ for brukernavnet for å utføre SQL med
  • -p letmein : en bryter og alternativ for passordet til brukeren
  • eksempelb : databasen for å kjøre SQL mot
  • -B : instruerer at utgangen skal være tabulatordelt (vi konverterer dette til kommaer senere i kommandoen)
  • -e «sql-setningen her» : sql-setningen for å kjøre Returnerer dataene
  • | sed ‘s/\t/»,»/g;s/^/»/;s/$/»/;s/\n//g’ : sed Er En Unix stream prosessor, i hovedsak tillate transformasjoner i dette tilfellet. Her har vi fire sed-kommandoer som endrer fanene til doble anførselstegn, legger til doble anførselstegn til begynnelsen og slutten av hver linje og legger til en ny linjemarkør på slutten av hver linje.
  • > filnavn.csv: sender resultatene til filen som heter filnavn.csv

nå er du klar til å laste opp DEN nye CSV-Filen Til SpatialKey.

MySQL SQL Syntaks:

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;

MySQL select-setningen bruker EN INTO OUTFILE-kommando for å utføre resultatene AV SQL-valget i en fil (i dette tilfellet /tmp/resultat.csv).

et par notater:

  • i begge tilfeller lagres filen til et sted lokalt der databasen blir kjørt fra (på samme maskin, eller til en mount/drive tilgjengelig for maskinen)
  • toppraden må legges til begge filene (som kan gjøres ved hjelp av en tekst editor eller regnearkprogram)

nå er du klar til å laste opp den nye CSV-Filen Til SpatialKey.

Postgres:

Postgres Er en annen populær åpen kildekode enterprise ready database. I Likhet Med MySQL er Det mange tredjepartsverktøy (inkludert Pgadmin Fra Postgres) for å administrere og administrere databasen. DEN beste innsatsen for å eksportere CSV-data fra Postgres er ved å bruke En Postgres-spesifikk SQL-kommando kalt COPY:

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

denne kommandoen er ekstremt rask og produserer en riktig formatert CSV-fil, inkludert overskriftene.

nå er du klar til å laste opp DEN nye CSV-Filen Til SpatialKey.

MS SQL Server:

SQL Server ER en kommersielt tilgjengelig database Fra Microsoft (DET er en mindre, mindre omtalt versjon kalt SQL Server Express også som er tilgjengelig for nedlasting gratis). SQL Server ER en enterprise ready database som brukes av mange selskaper over hele verden. Gjennom årene har det vært mange styringsverktøy både fra tredjeparter Og Fra Microsoft (Enterprise Manager, Management Studio, OG GJENNOM MS Developer Studio, for eksempel). To alternativer for eksport SOM CSV FRA EN MS SQL Server er bruk AV kommandolinjeverktøyet Bpc (Bulk Copy Program) eller Gjennom Datatransformasjonstjenester.

BCP:

Bulk Kopi Programmet kan utføres fra en kommandolinje eller GJENNOM SQL.

  • Kommandolinje:
    • BCP <tabellnavn > ut <filnavn.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 har En Transact-SQL-kommando kalt xp_cmdshell, denne kommandoen lar deg utføre kommandolinjekjørbare fra I SQL
  • xp_cmdshell BCP <tabellnavn> ut <filnavn.csv >- c-t, -T-s<servernavn>
    • Merk at jeg endret-U og – P til a-T som bruker en klarert tilkobling som vi sannsynligvis autentiserer TIL SQL server-maskinen allerede for å kjøre SQL-kommandoen.

DTS:
DTS pakker kan opprettes ved HJELP AV SQL-skript eller GJENNOM EN MS brukergrensesnitt.

  1. Fra Enterprise Manager velg Veivisere Datatransformasjon Eksporter Data
  2. Velg kildedatabasen
  3. For målet velg Tekstfil og angi målfilen og filnavnet med en .csv extension
  4. Sett tabellen eller spørringen for å trekke dataene fra
  5. Angi alternativet som første rad inneholder kolonneinformasjon
  6. på skjermen for å velge skilletegn, pass på at kommaet er valgt
  7. Kjør pakken

nå er du klar til å laste opp den nye CSV-Filen Til SpatialKey.

Oracle:

Oracle Er en kommersielt tilgjengelig database som har et stort følge i store selskaper. SOM SQL Server Er Oracle en enterprise ready database. Alternativer for å trekke UT TIL CSV ved Hjelp Av Oracle inkluderer Å bruke Oracle SQL Developer (et gratis verktøy Fra Oracle) og ved å bruke PL/SQL (vanligvis ved å lage en lagret prosedyre som det er litt mer kodebasert enn de andre databaseløsningene).

Oracle SQL Developer:

Dette er langt den enkleste måten for noen som ikke er kjent med komplekse pl / SQL lagrede prosedyrer for å eksportere data.

En måte å gjøre dette på er å lage En Rapport I SQL Developer og eksportere resultatene

  1. når rapporten er opprettet Og kjørt, høyreklikk på resultatruten og velg «Eksporter» fra kontekstmenyen
  2. i neste skjermbilde velg CSV som format og skriv inn filnavnet.csv og plassering

du kan også eksportere en enkelt tabell ved å:

  1. Høyreklikk på tabellnavnet i objekttrevisningen.
  2. Velg Eksporter.
  3. Velg CSV. Vinduet Eksporter Data vises.
  4. Klikk Kategorien Format.
  5. Velg Format som: CSV
  6. Skriv inn et filnavn og en plassering.
  7. Klikk På Kolonner-fanen.
  8. Sjekk kolonnene du ønsker å eksportere
  9. Klikk Der-fanen og legg til kriterier som trengs for å filtrere dataene
  10. Klikk Bruk.

PL/SQL:

den beste måten å eksportere data via PL / SQL er å opprette en lagret prosedyre som bruker KOMMANDOEN UTL_FILE.

for et godt eksempel lagret prosedyre for dette, se denne artikkelen på oracle.com. Merk at det er en anbefalt endring i den opprinnelige lagrede prosedyren som ligger i kommentarene (håndterer riktig sitering av data med reserverte CSV-tegn).

nå er du klar til å laste opp DEN nye CSV-Filen Til SpatialKey.

Enterprise Data Publisher:

for våre bedriftskunder som har store mengder data å importere eller trenger ofte oppdaterte data til SpatialKey, tilbyr vi et ekstra produkt kalt Enterprise Data Publisher. Dette er et tjenestebasert produkt som kjører bak kulissene (og brannmuren) som kan planlegges å skyve data automatisk ut Til SpatialKey fra databasene dine. Hvis Du er interessert i å finne ut mer om mulighetene Og kostnadene For Enterprise Data Publisher kan du sende oss en e-post ved å gå til Vår Kontakt oss side. Vi hjelper deg gjerne med dine databehov!

avslutningsvis Trenger SpatialKey dine data til å skinne! Å produsere data fra en eksisterende database trenger ikke å være en skremmende oppgave som trinnene ovenfor viser, og er et viktig første skritt for å Virkelig Låse Opp Dataene dine!

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *