Importieren einer CSV-File mit Datumsfeld

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

pmoegenb
********
Beiträge: 4330
Registriert: Di, 22.06.2004 12:02
Wohnort: 71134 Aidlingen
Kontaktdaten:

Re: Importieren einer CSV-File mit Datumsfeld

Beitrag von pmoegenb »

Hallo NetterLausbub,
Du kannst die CSV-Datei über Datei/Neu/Datenbank Option Verbindung zu einer bestehenden Datenbank herstellen Auswahl Text anmelden, dann hast Du Sie in Base, Calc und Writer zur Verfügung.
Gruß

Peter
---------------------------------------------------------------------------
Windows 7 Prof. 64-bit SP1, LibreOffice 4.3.6.2 und AOO 4.1.1
pmoegenb
********
Beiträge: 4330
Registriert: Di, 22.06.2004 12:02
Wohnort: 71134 Aidlingen
Kontaktdaten:

Re: Importieren einer CSV-File mit Datumsfeld

Beitrag von pmoegenb »

Hallo Michael,
Du scheinst etwas zu verwechseln. Jede bei OOo angemeldete Datenbank, die Datenquelle ist dabei egal, steht
  • Base
    Writer
    Calc
zu Verfügung.

D. h, wenn Du z. B. eine CSV-Datei (Verzeichnis) als Datenbank angemeldest, kannst Du die darin enthaltenen Daten mit den vorgenannten Produkten weiterverarbeiten. Auch ein Import in die interne Datenbank HSQLDB von Base ist innerhalb des Datenbank-Explorers durch rüberziehen mit der Maus möglich.

Ich denke, dass es sich bei der CSV-Datei nicht um einen einmaligen Vorgang handelt. Ich wollte Dir deshalb einen einfachen und schnellen Weg aufzeigen. Wenn Du einmalig ein Verzeichnis für CSV-Dateien in OOo als Datenbank angemeldet hast und es werden weitere CSV-Dateien in dieses Verzeichnis kopiert, sind die Dateien, ohne dass Du sonst noch was zu tun hast, sofort im Datenbank-Explorer von OOo sichtbar.
Gruß

Peter
---------------------------------------------------------------------------
Windows 7 Prof. 64-bit SP1, LibreOffice 4.3.6.2 und AOO 4.1.1
Gino
*
Beiträge: 12
Registriert: Sa, 04.10.2008 12:43

Re: Importieren einer CSV-File mit Datumsfeld

Beitrag von Gino »

Hallo NetterLausbub,

versuche es mal mit dem Import wenn das Datumsformat wie folgt vorliegt:

Code: Alles auswählen

2009-05-03
Mit einem Makro funktioniert das bei mir wie folgt:

Code: Alles auswählen

Sub Import_Data
Dim DatabaseContext As Object
Dim DataSource As Object
Dim oStatement As Object
Dim Connection As Object

   DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
   DataSource = DatabaseContext.getByName("MyDatabase")'Name der DB anpassen


   If Not DataSource.IsPasswordRequired Then
   Connection = DataSource.GetConnection("","")
Else
   InteractionHandler = createUnoService("com.sun.star.sdb.InteractionHandler")
   Connection = DataSource.ConnectWithCompletion(InteractionHandler)
End If

   oStatement = Connection.createStatement()

   Name1 = "Openoffice" 'Text Feldtyp Text [Varchar]
   Datum1 = "2009-05-03" 'das Datum muss in diesem Fomat vorliegen für den Feldtyp Datum [Date]

   oStatement.executeUpdate ("Insert into ""Tabelle1"" (""Name"", ""Datum"") values" +_
	"('" & Name1 & "' ,'" & Datum1 & "')")
   Connection.close()
End Sub
Ich hoffe das funktioniert auch bei Dir.

Gino
Maggus
****
Beiträge: 108
Registriert: Mo, 01.08.2005 13:32
Kontaktdaten:

Importieren eines CSV-Files

Beitrag von Maggus »

Hat ne Weile gedauert, bis ich herausbekommen habe, wie das hier erwähnte Importieren funktioniert.
Also, falls jemand herausfinden möchte, wie genau das geht:
  • Zellbereich in calc markieren (die Zelle einer Zeile über dem Datensatz muss als Kopfzeile mit markiert werden)
  • kopieren
  • in das Base Fenster wechseln
  • Tabellen anklicken
  • Zieltabelle markieren und Kontextmenü mit rechter Maustaste aufrufen
  • Einfügen
  • Weiter klicken
  • Zieltabelle: gewünschte Spalte auswählen und ganz nach oben bringen (mit den Pfeilen)
  • Fertig stellen klicken
könnte auch einfacher gehen, aber wenn man weiß wie es geht, ist's ja einfach :)

Maggus
Maggus (:o)
Antworten