Avatar billede Kongerslev_dk Novice
28. oktober 2016 - 18:07 Der er 5 kommentarer

Upload data i eksisterende mySql fra et ODS ark

Jeg har en tabel i mySql som jeg gerne vil kunne poppulere med data fra OpenOffice regneark.

Regnearket indeholder ikke nødvendigvis alle felter som findes i tabellen.
Blandt andet er der et autoincrementeret felt på tabellen, som ikke er i regnearket. Der er også timestamp-felter på tabellen som ikke er i regnearket. De felter som ikke er i regnearket, skal blot initieres med blank eller det som er defineret på tabellen som standardværdi.

Eksempel på tabel:
id (autoincrement) - er aldrig i regnearket
nr - altid i regneark
beskrivelse - altid i regneark
antal - kan være i regneark
holdbarTil (timestamp) - er aldrig i regnearket

Eksempel på regneark (som jeg gætter på at den ser ud ved import):
1, letmælk i store flasker, 5, 2016-12-10-14.55.33.123456
2, videofilm med fiskeeventyr, 3
3, æbler,, 2017-12-24-17.33.44.123456

Det vil selvfølgelig være fedest at det foregår på en admin side på mit site, men det kan selvfølgelig også være via mySql admin.

Jeg glæder mig til at høre om der er nogle gode forslag eller eksempler til hvordan jeg kan løse opgaven.

Mvh. Jens Peter
Avatar billede arne_v Ekspert
28. oktober 2016 - 18:59 #1
Skriv en custom loader.

Et lille program som laeser ODS eller eksporteret CSV og gemmer data i database med simple INSERT saetninger.

Du har postet i PHP saa hvis du kender PHP var det jo oplagt.

Men alt kan bruges: Java, C#, VBS etc..
Avatar billede olsensweb.dk Ekspert
28. oktober 2016 - 19:34 #2
kan du ikke bare åbne mysql databasen i open/libra office database ??
så kan du trække regnearket direkte over i databasen

jeg har selv tidligere importeret data fra et regneark, med en ODBC connection til min mysql database via libreoffice database

https://help.libreoffice.org/Common/Importing_and_Exporting_Data_in_Base/da
Avatar billede olsensweb.dk Ekspert
28. oktober 2016 - 19:41 #3
Avatar billede Kongerslev_dk Novice
28. oktober 2016 - 20:20 #4
Hej Arne & OlsensWeb
Mange tak for jeres hurtige svar.
Arne:
Jeg ville rigtig gerne gøre det i PHP, men jeg er på absolut begynder stadiet, så jeg ved ikke hvordan jeg skal gøre det. Ville være rigtig fedt hvis jeg kunne lave en administrationsside hvor jeg kunne vælge et regne ark som så blev uploadet til tabellen...

Olsen:
Jeg har forsøgt i mySql admin, men der bliver bare oprettet en ny tabel med navnet Ark1, selvom jeg har "åbnet" den ønskede tabel inden jeg trykker på import.
Mht. LibreOffice, så er det ikke noget jeg har erfaring med overhovedet. Men det kræver vel at jeg har en kopi af tabellen på min lokale computer, og så efterfølgende får data fra den lokale tabel op på tabellen på serveren? lyder lidt som en dobbel tjans ;-) som jeg så heller ikke ved hvordan jeg skal gøre.

Hvis I kan give mig noget eksempel at arbejde videre med, vil jeg blive rigtig glad :-)

Mvh. Jens Peter
Avatar billede arne_v Ekspert
29. oktober 2016 - 03:31 #5
Der er faerdige tools til at hente data ind, men en custom loader giver labgt bedre kontrol over data.

Upload CSV fil,. parse den og lav INSERT's.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester