AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Fehler in Abfrage aber warum?
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler in Abfrage aber warum?

Ein Thema von ibp · begonnen am 10. Mai 2004 · letzter Beitrag vom 10. Mai 2004
Antwort Antwort
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#1

Fehler in Abfrage aber warum?

  Alt 10. Mai 2004, 10:35
Hallo habe folgenden Source der eine Exception auslöst, ich denke es ist der Tabellen Name, den ich verkehrt übergebe! Die Tabelle und das Feld existieren aber!
Wenn ich die Zeilen ändere in
"sql.Add('alter table '+deltable+' drop '+delfld);" dann passiert der gleiche Mist! http://www.delphipraxis.net/images/smiles/wall_bash.gif
Aber wenn ich es so mache
"sql.Add('alter table '+edTabTname.Text+' drop '+edTabPrefix.Text+'_'+edFldName.Text);", dann klappt es!
http://www.delphipraxis.net/images/smiles/gruebel.gif Wie geht dem ???

Delphi-Quellcode:
  if ifid_pkey='then exit;
  deltable:=edTabTname.Text; // Tabelle
  delfld:=edTabPrefix.Text+'_'+edFldName.Text; // Feld
  with quWorkTables do begin
    sql.clear;
    sql.Add('alter table :tble drop :fld');
    params.ParamByName('tble').AsString := deltable;
    params.ParamByName('fld').AsString := delfld;
    try
      ExecSQL; // Tabelle löschen
    except
        on E: Exception do ShowMessage('Fehler beim löschen des Feldes "'+delfld+'"'+#13+
                                     'in Tabelle "'+deltable+'"!'+#13+
                                     E.Message);
    end; // try..except
  end; // with
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Fehler in Abfrage aber warum?

  Alt 10. Mai 2004, 10:37
Hai ibp,

Tabellennamen könne IMHO nicht als Parameter übergeben werden.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#3

Re: Fehler in Abfrage aber warum?

  Alt 10. Mai 2004, 10:41
Du kannst weder einen Tabellen- noch Spaltennamen als Parameter übergeben.

Es sollte aber so gehen:
Delphi-Quellcode:
  with quWorkTables do
  begin
    SQL.Text := 'ALTER Table ' + deltable + ' DROP ' + delfld;
    try
      ExecSQL; // Tabelle löschen
    except
      on E: Exception do
        ShowMessage('Fehler beim löschen des Feldes "' + delfld + '"' + #13#10 +
                    'in Tabelle "' + deltable + '"!' + #13#10 +
                    E.Message);
    end; // try..except
  end; // with
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#4

Re: Fehler in Abfrage aber warum?

  Alt 10. Mai 2004, 10:43
aber warum dann der fehler bei:

sql.Add('alter table '+deltable+' drop '+delfld); wenn doch
Delphi-Quellcode:
deltable:=edTabTname.Text; // Tabelle
delfld:=edTabPrefix.Text+'_'+edFldName.Text; // Feld
edTabTname.Text ist doch ein string und deltable ist ein string!
das alles klappt aber, wenn
sql.Add('alter table '+edTabTname.Text+' drop '+edTabPrefix.Text+'_'+edFldName.Text); ?????
  Mit Zitat antworten Zitat
Antwort Antwort


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 03:15 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