Det er vigtigt at du anvender Chrome eller Firefox til disse opgaver, da PHPMyAdmin følger webstandarderne. Hvis du anvender Safari, Internet Explorer eller Edge, risikerer du at få fejl.
Skal man indtaste meget data kan det betale sig at anvende csv filer. Det er filer hvor man ved hjælp af simple tekstfiler kan indtaste store mængder data. Se eksemplet f.eks. tabellen herunder:
Initialer | f_Navn | e_navn | Mobil | |
---|---|---|---|---|
bs1 | Anders | Andersen | 23344556 | aa@fakemail.dk |
bs2 | Bente | bentsen | 23344557 | bb@fakemail.dk |
bs3 | Carl | Carlsen | 23344558 | cc@fakemail.dk |
bs4 | Dorte | Dotsen | 23344559 | dd@fakemail.dk |
bs5 | Egon | Egonsen | 23344560 | ee@fakemail.dk |
bs6 | Frederikke | Frederiksen | 23344561 | ff@fakemail.dk |
Det kan man skrive ind i en tekstfil, ved at lade rækkerne være adskilt af linjeskift og kolonnerne af kommaer (,). Læg mærke til at den første række indeholder kolonne navnene.
initialer,f_navn,e_navn,Mobil,Mail bs1,Anders,Andersen,23344556,aa@fakemail.dk bs2,Bente,bentsen,23344557,bb@fakemail.dk bs3,Carl,Carlsen,23344558,cc@fakemail.dk bs4,Dorte,Dotsen,23344559,dd@fakemail.dk bs5,Egon,Egonsen,23344560,ee@fakemail.dk bs6,Frederikke,Frederiksen,23344561,ff@fakemail.dk
Du kan hente denne lille csv fil her: bestyrelse_csv.csv.
Man skal være opmærksom på at CSV ikke er en fast standard, og at man ikke kan være sikker på at det er kommaer der adskiller de enkelte felter.
Microsoft anvender f.eks. semikolon (;) som separator, og det betyder at man skal gøre programmet opmærksom på at det ikke er komma der separerer. Der kommer et eksempel på dette lidt senere
Man kan importere csv-filer ved at vælge sin database og vælge menuen Importer. Vælg databasen mentorer og herefter menuen Importer.
Klik på knappen Vælg fil og find filen bestyrelse_csv.csv
Når den er valgt skal du sætte formatet til CSV og sætte flueben i "Den første linje af filen indeholder tabellens kolonnenavne"
Herefter kan du trykke Udfør
Når databasen er lagt ind kan du se den nye tabel ved at klikke på menuen Struktur:
Vi skal lige have ændret navnet på tabellen, og det gør vi ved at klikke på tabellen Table 4 og vælge menuen Operationer (du skal måske kigge under menuen Mere). Her ændrer vi navnet til bestyrelse.
Klik på Udfør, og se resultatet ved at vælge hele databasen igen og se resultatet:
Som det sidste ændrer posten initialer til at være primærnøgle for tabellen.
Læg mærke til at længderne af datatyperne er sat efter csv-filen. Det kan være nødvendigt at justere på datatyperne og/eller længderne af dem, hvis der senere skal ændres i listen.
Her vil vi importere de danske postnumre. Oprindeligt kommer tabellen fra Postnord's hjemmeside, men til denne opgave har jeg omdannet den til csv-format.
Hent filen postnummerfil.csv og importer den i en database.
Ofte får man leveret datafiler i excel-format. Det kræver at man i Excel gemmer filen i csv-format. Du skal være opmærksom på at Microsoft ikke gemmer filen korrekt, men med semikolonner (;) i stedet for kommaer (,).
Derfor skal du ændre feltet "Kolonner adskilt med:" fra , til ;.
Når du importeret tabellen skal du vælge menuen Vis:
Læg mærke til at phpMyAdmin kommer med en advarsel: "Current selection does not contain a unique column". Tabellen har altså ikke en PRIMÆR nøgle, og det betyder, at vi ikke kan rette, kopiere og slette i tabellen. Det skal vi have ændret. Gå ind i menuen Struktur og sæt Postnr. til at være PRIMÆR nøgle. Læg mærke til at det udløser en fejl.
Årsagen hertil er, at bl.a. postnummeret 1055 forekommer mere end en gang, hvilket betyder at feltet ikke kan være en primærnøgle. Det betyder enten:
I dette tilfælde vælger vi den 3. mulighed, og det kan vi gøre fordi det ikke er en tabel vi vedligeholder og skal rette i, men at den kommer fra Postnord.
Som det sidste ændrer vi tabellens navn til "postnr" ved at gå ind i menuen Operationer og blokken Tabel-indstillinger.
På nettet findes der flere fri databaser der er tilgængelige i CSV format. Prøv f.eks. denne: https://think.cs.vt.edu/corgis/csv/index.html
Her finder man f.eks. en musikdatabase: https://think.cs.vt.edu/corgis/csv/music/music.html
Disse databaser kan være ret store, og det betyder at der skal ændres på standardindstillingerne i XAMPP. Helt konkret skal vi have ændret på størrelsen af de filer, som PHPMyAdmin vil acceptere. For at undgå at komme i problemer med størrelsen sætter vi den til 100MB.
... på WindowsStart Geany og åbn filen php.ini i mappen C:\xampp\php, og indsæt følgende i bunden.
post_max_size = 100M upload_max_filesize = 100M max_execution_time = 5000 max_input_time = 5000 memory_limit = 1000M
Gem filen og åbn herefter filen my.ini i mappen C:\xampp\mysql\bin
Ret linien max_allowed_packet, så den får størrelsen 100M
max_allowed_packet = 100M
Herefter genstartes Apache og MySQL i XAMPP, og PHPMyAdmin genindlæses hvis det ikke har været lukket ned.
... på MacFor at redigere i konfigurationsfilerne skal du åbne terminalen og indtaste følgende kommando.
sudo nano /private/etc/php.ini.default
Indtast dit kodeord, og nano starter.
Tast Ctrl+W+V så cursoren går til slutningen af dokumentet.
Kopier nedestående og indsæt det
post_max_size = 100M upload_max_filesize = 100M max_execution_time = 5000 max_input_time = 5000 memory_limit = 1000M
Gem filen ved at trykke:
Herefter ændres der i filen my.cnf
sudo nano /Applications/XAMPP/xamppfiles/etc/my.cnf
Ændr feltet max_allowed_packet, så det får værdien 100:
Nano er en meget effektivt tekst program, og derfor har det også søgefunktioner:
For at finde en tekststreng taster man Ctrl+W+V, og så kan man indtaste tekststrengen.
Hvis den findes i teksten flytter cursoren til selve tekstrengen.
max_allowed_packet = 100M
Gem filen som ovenfor
Herefter genstartes Apache og MySQL i XAMPP, og PHPMyAdmin genindlæses hvis det ikke har været lukket ned.