PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Abfrage und Parameter auf einmal


codeding
09.04.2002, 12:44
Hi.

Die Situation
Ich habe ein VB-Programm, dass über ein Zwischenprogramm einen SQL-String an eine Access-DB schickt. Der SQL-String führt eine Abfrage über zwei in Access gespeicherte Abfragen aus. :mauer:

Das Problem:
Die beiden Abfragen benötigen Parameter.

Die Frage:
Kann man in einem einzelnen SQL-String (weil´s über das Zwischenprogramm gehen muss, geht nur einer) die eigentliche SQL-Abfrage und die Parameter schicken?

Der Gedanke:
Ich hatte mit gedacht, dass man das so in dieser Art irgendwie kann:
parameter1="Testtext"; Select * from t_tabelle where t_tabelle.feld1=parameter1
oder so ähnlich - also mit Semikolon getrennt.

Wäre sehr dankbar für einen guten Tipp.
mfg Codeding :)


Felix Kaiser
09.04.2002, 13:02
Ich machs immer so, z.B. in der Tabelle ´sysinfo´ (item TEXT, value TEXT) einen Eintrag zu selektieren:

SELECT * FROM sysinfo WHERE item = ´os´

Würde mir einen Ergebniszeiger auf die Menge mit der Zeile, in der die Spalte ´item´ den Wert ´os´ trägt.

sami
09.04.2002, 15:56
kannst du den source dieses zwischenprogrammes ändern? wenn ja, kannst du den sql string, den du an dieses sendest parsen und so beliebiges übergeben.

Felix Kaiser
09.04.2002, 17:01
Was ist das überhaupt für ein Zwischenprogramm? Nimm doch gleich die LIBMYSQL.DLL. Oder meinste die mit Zwischenprogramm? Obwohl ich mit der nie Probs hatte. Kannst auch mal in der DL Sektion von www.mysql.org suchen. Die haben für einige Sprachen LIBMYSQL Packages + Beispiele, glaube auch für VB. Schau einfach mal.

codeding
10.04.2002, 09:48
... das SQL-Zeugs kommt von einer AktiveX-Komponente aus einer WebSeite. Die Kommunikation mit dem DB-Server läuft über eine Art Listener-Prg. auf Winsocket-Basis. Die DB dahinter ist eine Access-DB - also alles seht MS-lastig 8o .
Das Zwischenprogramm sollte so bestehen bleiben. Ich weiss, dass es zig Möglichkeiten gibt, wie man das Problem durch Änderung der Programme lösen könnte, aber eigentlich hätte ich´s schon gern durch den SQL-String gelöst, den ich schicke.
Zur Not muss ich halt die Parameter vorab in einer sep. Tabelle speichern und bei der WHERE-Bedingung auf die Tabelle joinen, aber das ist nicht wirklich eine saubere Lösung ;( .

sami
10.04.2002, 11:10
hm mal ne andere frage: der 1. parameter1 in deiner abfrage hat mit dem 2. parameter1 nix zu tun, gell?