AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ParamByName & SQL

Ein Thema von Tester · begonnen am 7. Aug 2003 · letzter Beitrag vom 7. Aug 2003
Antwort Antwort
Tester

Registriert seit: 5. Aug 2003
Ort: tief im Osten
78 Beiträge
 
#1

ParamByName & SQL

  Alt 7. Aug 2003, 13:51
Hallo!

Kennt sich jemand von euch mit ParamByName aus?

Habe das schon mal verwendet mit LIKE zusammen, da bin ich auch wunderbar zu recht gekommen.

Jetzt lasse ich mir alle Tabellen in einer ComboBox anzeigen und ich möchte die ausgewählte gleich anzeigen lassen.

Ist das über Params überhaupt möglich?

Momentan sieht es so aus :

Code:
  Query1.SQL.Clear;
  stmtParams := TParams.Create;
  stmtParams.CreateParam(ftString, 'DBName', ptInput );
  stmtParams.ParamByName('DBName').AsString := OvcFileComboBox1. Items[OvcFileComboBox1.ItemIndex];
  Query1.SQL.Add( ' SELECT * FROM '':DBName''');
  Query1.Prepare;
  Query1.ExecSQL();
  Query1.Open;

  Query1.Close;
Bekomme jedoch immer die Meldung, ungültiger Dateiname.
Jedoch gibts die gewählten Datein.

Danke im voraus

Gruß

TESTER
  Mit Zitat antworten Zitat
mr2

Registriert seit: 3. Mai 2003
140 Beiträge
 
Delphi 2006 Enterprise
 
#2

Re: ParamByName & SQL

  Alt 7. Aug 2003, 14:18
Soweit mir bekannt ist, darf der Tabellennamen in SQL-Anweisungen nicht parametrisiert werden. Du wirst also den SQL-String "zusammenbauen" müssen.
Delphi-Quellcode:
  Query1.SQL.Text := 'select * from ' + DBName;
  Query1.Open;
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#3

Re: ParamByName & SQL

  Alt 7. Aug 2003, 14:19
Spontane Idee, ohne es zu testen:
Delphi-Quellcode:
Query1.SQL.Clear;
// stmtParams := TParams.Create;
// stmtParams.CreateParam(ftString, 'DBName', ptInput );
Query1.SQL.Add( ' SELECT * FROM :DBName');
stmtParams.ParamByName('DBName').AsString := OvcFileComboBox1. Items[OvcFileComboBox1.ItemIndex];
Query1.Prepare;
// Query1.ExecSQL(); // wozo vor Open?
Query1.Open;
Query1.Close;
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#4

Re: ParamByName & SQL

  Alt 7. Aug 2003, 14:21
Stimme ich zu, die Position vom Parameter ist mir gar nicht aufgefallen
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
Tester

Registriert seit: 5. Aug 2003
Ort: tief im Osten
78 Beiträge
 
#5

Re: ParamByName & SQL

  Alt 7. Aug 2003, 14:23
Genau das wollt ich auch gerade posten.
Denn so funktionierts.

Danke für Eure Mühe!

Gruß

TESTER
  Mit Zitat antworten Zitat
Tester

Registriert seit: 5. Aug 2003
Ort: tief im Osten
78 Beiträge
 
#6

Re: ParamByName & SQL

  Alt 7. Aug 2003, 14:29
Zur besseren Übersicht :

Code:
var
  lwert : string;
begin
  lwert := ComboBox1.Items[ComboBox1.ItemIndex];
  Query1.SQL.Clear;
  Query1.SQL.Add('SELECT * FROM '+lwert);
  Query1.Prepare;
  Query1.Open;
Hab mich wohl von einem anderen Beitrag beirren lassen, deshalb der erste Versuch mit Param.

Gruß

TESTER
  Mit Zitat antworten Zitat
mr2

Registriert seit: 3. Mai 2003
140 Beiträge
 
Delphi 2006 Enterprise
 
#7

Re: ParamByName & SQL

  Alt 7. Aug 2003, 14:41
arbeite doch gleich mit Query1.SQL.Text, dann sparst Du Dir den Aufruf von Clear
  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 08:47 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