AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi "ALTER TABLE" funktioniert nur im Entwurfsmodus

"ALTER TABLE" funktioniert nur im Entwurfsmodus

Ein Thema von FBrust · begonnen am 29. Dez 2005 · letzter Beitrag vom 30. Dez 2005
Antwort Antwort
Benutzerbild von FBrust
FBrust

Registriert seit: 4. Okt 2002
Ort: Saarbrücken
654 Beiträge
 
Delphi 10.4 Sydney
 
#1

"ALTER TABLE" funktioniert nur im Entwurfsmodus

  Alt 29. Dez 2005, 14:41
Datenbank: Firebird embedded • Version: 1.5 • Zugriff über: Zeos 6.5.1
Hallo,

ich habe in meinem Programm eine Abfrage (TZQuery), die zur Laufzeit mit einem SQL-Statement gefüttert und dann per .ExecSQL ausgeführt wird.

Das Statement lautet

ALTER TABLE TBLOBJECTS ADD STREXPPATH VARCHAR(255); Wenn ich nun diese Abfrage im Entwurfsmodus auf "Aktiv" schalte, wird das Statement auch ausgeführt und das Feld findet sich in der Tabelle, so wie es sein soll.

Wenn ich aber die Abfrage zur Laufzeit mit dem Statement belege und dann ausführe, also

Delphi-Quellcode:
              qryChgTbl.Close;
              qryChgTbl.SQL.Clear;
              showmessage(strSQL);
              qryChgTbl.SQL.Add(strSQL);
              qryChgTbl.ExecSQL;
,

dann erhalte ich folgende Fehlermeldung:

"SQL Error: unsuccessful metadata update Table column not found. Error Code: -607. This operation is not defined for system tables. The SQL: ALTER TABLE TBLPROJECTS ADD STREXPPATH VARCHAR(255);' Prozess wurde angehalten.....blabla"

Fazit: Im Entwurfsmodus gehts, zur Laufzeit nicht.

Hat vielleicht jemand eine Idee, woran das liegen könnte?

Gruß
Frank
"Ich habe Dinge gesehen, die ihr Menschen niemals glauben würdet. Gigantische Schiffe, die brannten, draußen vor der Schulter des Orion" - Roy Batty
  Mit Zitat antworten Zitat
diago

Registriert seit: 5. Jan 2005
11 Beiträge
 
#2

Re: "ALTER TABLE" funktioniert nur im Entwurfsmodu

  Alt 30. Dez 2005, 13:23
Hi FBrust,

bei mir kommt der Fehler dann, wenn 2 oder mehr Verbindungen zu deiner Datenbank offen sind.

Dabei hält vermutlich sowohl deine Enwicklungsumgebung, als auch dein Programm eine Verbindung zur Datenbank.

Wenn du also die Verbindung in Delphi schließt, sollte dein Prog die Anweisung ausführen können.

LG
diago
  Mit Zitat antworten Zitat
Benutzerbild von FBrust
FBrust

Registriert seit: 4. Okt 2002
Ort: Saarbrücken
654 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: "ALTER TABLE" funktioniert nur im Entwurfsmodu

  Alt 30. Dez 2005, 16:48
Hi, Diago,


danke für Deine Antwort.

Das mit der zweiten Verbindung wäre eine Möglichkeit, werds n. W. ausprobieren.


Gruß und guten Rutsch

Frank
"Ich habe Dinge gesehen, die ihr Menschen niemals glauben würdet. Gigantische Schiffe, die brannten, draußen vor der Schulter des Orion" - Roy Batty
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz