SQL - Excelliste
Hallo,
ich habe eine Excelliste mit zwei Spalten, Artikelnummer und Bezeichnung.
Nun befinden sich in dieser Liste 160 Datensätze.
Diese würde ich gerne in einer Datenbank updaten.
Nun will ich ja nicht jeden einzeln Datensatz hier manuel eingeben.
Gibt es eine möglichkeit per SQL, ODBC, Excel etc. wie auch immer alle 160 Datensätze zu aktualisieren?
Danke
Gruß
ottscho
ich habe eine Excelliste mit zwei Spalten, Artikelnummer und Bezeichnung.
Nun befinden sich in dieser Liste 160 Datensätze.
Diese würde ich gerne in einer Datenbank updaten.
UPDATE meine_Tabelle
SET Bezeichnung = "Wert1"
WHERE Artikelnummer = "Wert2"
Nun will ich ja nicht jeden einzeln Datensatz hier manuel eingeben.
Gibt es eine möglichkeit per SQL, ODBC, Excel etc. wie auch immer alle 160 Datensätze zu aktualisieren?
Danke
Gruß
ottscho
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 155788
Url: https://administrator.de/forum/sql-excelliste-155788.html
Ausgedruckt am: 22.04.2025 um 07:04 Uhr
4 Kommentare
Neuester Kommentar
Moin ottscho,
ich kann bei deiner Anforderung irgendwie Vorteile einer "Automatisierung" durch SQL-Update-Statements noch nicht so wirklich erkennen.
Stehen denn die "neuen" Bezeichnungen der Artikel in einer real exitierenden Tabelle {Artikelnummer, Bezeichnung} ?
Sonst musst du doch wieder 57 Update-Statements von Hand bzw zu Fuss, aber auf jeden Fall mit irgendwelchen Extremitäten tippseln ...
In der Zeit hättest du doch die 160 Sätzelchen mit einem normalen Wechseln/erstzen 20x fertig und selbst mit Einzelsatz-Überschreiberei schon 10x.
Grüße
Biber
ich kann bei deiner Anforderung irgendwie Vorteile einer "Automatisierung" durch SQL-Update-Statements noch nicht so wirklich erkennen.
Stehen denn die "neuen" Bezeichnungen der Artikel in einer real exitierenden Tabelle {Artikelnummer, Bezeichnung} ?
Sonst musst du doch wieder 57 Update-Statements von Hand bzw zu Fuss, aber auf jeden Fall mit irgendwelchen Extremitäten tippseln ...
In der Zeit hättest du doch die 160 Sätzelchen mit einem normalen Wechseln/erstzen 20x fertig und selbst mit Einzelsatz-Überschreiberei schon 10x.
Grüße
Biber
Moin ottscho,
das hört sich schon etwas besser an, wenn ein Update einer Tabelle mit Daten aus einer anderen Tabelle erfolgen soll.
War für mich beim Lesen deiner Aufgabenstellung so nicht klar, deshalb die Rückfrage.
Und wenn ich es richtig verstanden habe, ist die eine Tabelle in einem "echten" Datenbanksystem, die Aktualisierungen in einer Exceltabelle?
Bei der pupsig kleinen Menge der Daten (<1000 Zeilen) würde ich dennoch eher Dünnbrettbohrer-Lösungen anstreben.
makros dauern länger als 5 Minuten... entfällt also.
Variante a) du hast schon irgendeine Universal-SQL-JDBC-variante auf deinem Rechner, die auch über den einfachen JdbcOdbcDriver aud Excel zugreifen kann.
Dann schaufel diese 160 Datensätze in eine neue tabell auf der gleichen Datenbankinstanz und mach dein Update mit einem ganz normalen JOIN.
Variante b)
Saug in die Datenbank diese 160-Excelsätze rein als CSV-Datei, dann weiter wie bei a)
Variante c) Erzeuge in Excel aus den beiden Datenzeilen in Spalte A & B eine dritte Spalte C mit der Formel
Diese 160 Zeilen kannst du per Copy & Paste aus Excel kopieren und auf deiner DB abfeuern.
Das wären die 3 Varianten, die weniger Zeit brauchen als ein ### mit meinen Praktikantinnen.
Grüße
Biber
[Edit] Keine Ahnung, warum das Wort "Fachgespräch" in der vorigen Zeile von der Forensoftware zensiert wird - muss ein Bug sein [/Edit]
das hört sich schon etwas besser an, wenn ein Update einer Tabelle mit Daten aus einer anderen Tabelle erfolgen soll.
War für mich beim Lesen deiner Aufgabenstellung so nicht klar, deshalb die Rückfrage.
Und wenn ich es richtig verstanden habe, ist die eine Tabelle in einem "echten" Datenbanksystem, die Aktualisierungen in einer Exceltabelle?
Bei der pupsig kleinen Menge der Daten (<1000 Zeilen) würde ich dennoch eher Dünnbrettbohrer-Lösungen anstreben.
makros dauern länger als 5 Minuten... entfällt also.
Variante a) du hast schon irgendeine Universal-SQL-JDBC-variante auf deinem Rechner, die auch über den einfachen JdbcOdbcDriver aud Excel zugreifen kann.
Dann schaufel diese 160 Datensätze in eine neue tabell auf der gleichen Datenbankinstanz und mach dein Update mit einem ganz normalen JOIN.
Variante b)
Saug in die Datenbank diese 160-Excelsätze rein als CSV-Datei, dann weiter wie bei a)
Variante c) Erzeuge in Excel aus den beiden Datenzeilen in Spalte A & B eine dritte Spalte C mit der Formel
= "UPDATE meine_Tabelle SET Bezeichnung = '" & $A2 & "' WHERE Artikelnummer = '" & $B2 &"' ; "
--> in Zelle $C$2 eintragen und nach unten kopieren.Diese 160 Zeilen kannst du per Copy & Paste aus Excel kopieren und auf deiner DB abfeuern.
Das wären die 3 Varianten, die weniger Zeit brauchen als ein ### mit meinen Praktikantinnen.
Grüße
Biber
[Edit] Keine Ahnung, warum das Wort "Fachgespräch" in der vorigen Zeile von der Forensoftware zensiert wird - muss ein Bug sein [/Edit]