AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi ALTER TABLE CHANGE - Spaltennamen ändern in Access
Thema durchsuchen
Ansicht
Themen-Optionen

ALTER TABLE CHANGE - Spaltennamen ändern in Access

Ein Thema von Moony · begonnen am 29. Jan 2009 · letzter Beitrag vom 30. Jan 2009
Antwort Antwort
Seite 2 von 2     12   
nahpets
(Gast)

n/a Beiträge
 
#11

Re: ALTER TABLE CHANGE - Spaltennamen ändern in Access

  Alt 30. Jan 2009, 11:38
Hallo,

funktionieren die anderen Exit alle? Hast Du mal entsprechende Fehler eingebaut, um das zu prüfen?
Das Einzige, was mir auffällt ist:
Delphi-Quellcode:
if not PhotoTB.Active then
  PhotoTB.Open;

PhotoTB.Active := True; // <-- überflüssig, da nach PhotoDB.Open Active = True.
aber dass das der Fehler sein sollte, halte ich für unwahrscheinlich.
Result könnte zu dem Zeitpunkt noch undefiniert sein, sofern es nicht in dem von Dir durch ... dargestellten Ausschnitt mit einem Wert versehen wurde.
  Mit Zitat antworten Zitat
Moony

Registriert seit: 29. Jul 2003
Ort: Essen
454 Beiträge
 
Delphi 2010 Professional
 
#12

Re: ALTER TABLE CHANGE - Spaltennamen ändern in Access

  Alt 30. Jan 2009, 11:45
An dieser Zeile liegts definitiv nicht. Der Result wird zu Anfang der Routine auf true gesetzt und nur im Fehlerfall auf False. Das Exit hat ja vor meinem Umbau funktioniert, auch in dieser Konstellation.
Ich weiß, daß ich nichts weiß! Sokrates
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#13

Re: ALTER TABLE CHANGE - Spaltennamen ändern in Access

  Alt 30. Jan 2009, 11:55
Zitat von Moony:
Ich kann doch nachträglich den Tabellennamen ändern. Das ist nun wirklich SQL standard.
Damit hier nichts unwidersprochen stehen bleibt: CHANGE ist nach wie vor nicht SQL-Standard!
Zitat:
SQL (Wikipedia)
Die Alter-Definition ist ADD Attribut-Definition. In SQL-92 gibt es noch ALTER Attribut Default-Wert oder DROP Attribut. Da SQL-92 sehr restriktiv bezüglich der ALTER-Anweisung ist, ist dies eine der Anweisungen, die von den Herstellern universell erweitert wurde, so dass beliebige Änderungen möglich sind wie durch eine Folge von DROP und ADD-Anweisungen.
Über Whitemarsh: SQL habe ich Dokumente gefunden, u.a. (ISO-ANSI Working Draft) Foundation (SQL/Foundation) WG3:HBA-003 / H2-2003-305 (August, 2003) in 5WD-02-Foundation-2003-09.pdf. Im Abschnitt 11.10 <alter table statement> (Seite 571) steht nichts von CHANGE.

Es gilt deshalb das, was hier ansonsten vorgeschlagen wurde: Wenn ein spezieller SQL-Dialekt so etwas anbietet, kann es natürlich benutzt werden. Wenn nicht, müssen die genannten Alternativen (Temp-Column, Temp-Table) verwendet werden. Es ist deshalb immer nützlich, die bestehenden Hilfen zu studieren.

Gruß Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
Moony

Registriert seit: 29. Jul 2003
Ort: Essen
454 Beiträge
 
Delphi 2010 Professional
 
#14

Re: ALTER TABLE CHANGE - Spaltennamen ändern in Access

  Alt 30. Jan 2009, 13:02
Ich hab das ja jetzt anders gelöst. ohne eine Temp-Tabelle. Aber mein Problem ist ,dass ich abschließend eine Access Violation erhalte.
Ich weiß, daß ich nichts weiß! Sokrates
  Mit Zitat antworten Zitat
Ydobon

Registriert seit: 3. Mär 2006
264 Beiträge
 
Delphi 11 Alexandria
 
#15

Re: ALTER TABLE CHANGE - Spaltennamen ändern in Access

  Alt 30. Jan 2009, 14:51
Ups, ich Idiot, da habe ich etwas zu früh aufgehört. Ein Tabellenobjekt enthält aber wiederum eine Column Collection, mit deren Mitgliedern geht das Umbenennen genauso. Sollte eigentlich da oben stehen.

Die Fehlermeldung dürfte an cat._Release liegen. Das scheint die Laufzeitumgebung nicht so richtig mitzubekommen und versucht am Ende der Prozedur den Katalog noch einmal zu schließen. Also entweder das Release weglassen oder mit Pointer(cat):=Nil Delphi die Lust am Schließen vermiesen.
  Mit Zitat antworten Zitat
Moony

Registriert seit: 29. Jul 2003
Ort: Essen
454 Beiträge
 
Delphi 2010 Professional
 
#16

Re: ALTER TABLE CHANGE - Spaltennamen ändern in Access

  Alt 30. Jan 2009, 16:35
upi, das wars. Jetzt funktioniert alles wunderbar.

Danke allen für die Unterstützung!
Ich weiß, daß ich nichts weiß! Sokrates
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 17:31 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