Tilman Räger
Benutzer
- Beiträge
- 10
Hallo,
ich habe ein kleines Problem: Ich soll eine bestehende Tabelle mit Hilfe einer .sql-Skript-Datei ändern, vorher allerdings überprüfen, ob diese Änderung nicht schon durchgeführt wurde. Dabei ist die eigentliche Änderung kein Problem, wichtig ist mir, wie ich diese Abfrage hineinbekomme. Als Pseudocode also in etwa
if (<Feld x nicht vorhanden) {
DROP INDEX Idx //
ALTER TABLE ... // rename der alten Tabelle
CREATE TABLE ... // neu erstellen der neuen Tabelle
INSERT ... // Einlesen der Daten aus der alten Tabelle und einfügen in die neue
}
Leider stehe ich hier ein wenig auf dem Schlauch. Normalerweise würde ich so etwas in C++ machen, aber hier ist nun einmal SQL vorgegeben. Meine SQL-Ausbildung liegt schon einige Zeit zurück und ich bin auch nicht sicher, ob damals so etwas überhaupt möglich war. Was ich im Internet über prozedurales SQL gefunden habe (ich denke mal, das das in etwa so etwas ist) war auch nicht gerade erheiternd - da hieß es, DDL-Befehle (also ALTER TABLE etc.) wären nicht erlaubt :-(
Vielleicht kann mir ja jemand einen Tip geben.
Im Voraus schon einmal vielen Dank
Tilman (Räger)
ich habe ein kleines Problem: Ich soll eine bestehende Tabelle mit Hilfe einer .sql-Skript-Datei ändern, vorher allerdings überprüfen, ob diese Änderung nicht schon durchgeführt wurde. Dabei ist die eigentliche Änderung kein Problem, wichtig ist mir, wie ich diese Abfrage hineinbekomme. Als Pseudocode also in etwa
if (<Feld x nicht vorhanden) {
DROP INDEX Idx //
ALTER TABLE ... // rename der alten Tabelle
CREATE TABLE ... // neu erstellen der neuen Tabelle
INSERT ... // Einlesen der Daten aus der alten Tabelle und einfügen in die neue
}
Leider stehe ich hier ein wenig auf dem Schlauch. Normalerweise würde ich so etwas in C++ machen, aber hier ist nun einmal SQL vorgegeben. Meine SQL-Ausbildung liegt schon einige Zeit zurück und ich bin auch nicht sicher, ob damals so etwas überhaupt möglich war. Was ich im Internet über prozedurales SQL gefunden habe (ich denke mal, das das in etwa so etwas ist) war auch nicht gerade erheiternd - da hieß es, DDL-Befehle (also ALTER TABLE etc.) wären nicht erlaubt :-(
Vielleicht kann mir ja jemand einen Tip geben.
Im Voraus schon einmal vielen Dank
Tilman (Räger)