Variable in SELECT....WHERE Anweisung

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Variable in SELECT....WHERE Anweisung

Re: Variable in SELECT....WHERE Anweisung

von hoffie » Mo, 17.01.2011 14:19

Hi DPunch,

dachte zwar im ertsen Moment, dass hätte ich schon mal probiert, aber scheinbar getäuscht :)

Vielen Dank funktioniert!
Gruß peter

Re: Variable in SELECT....WHERE Anweisung

von DPunch » Mo, 17.01.2011 11:58

Aloha

Code: Alles auswählen

sStatement = "SELECT DISTINCT Event FROM Tabelle3 WHERE Meisterschaft = '" & suchwort & "'"

Variable in SELECT....WHERE Anweisung

von hoffie » Mo, 17.01.2011 11:53

Hallo Leute,

auf meiner Suche nach einer Lösung zu meinem Problem, hab ich zwar schon einige Sachen hier im Forum gefunden, aber funtkioniert hat is jetzt leider noch nichts..... Desalb würde ich hier gerne folgende konkrete Frage an euch stellen:
Wie kann ich bei einer WHERE Bedingung in einer SELECT Abfrage eine Variable einbinden?
Ich lese eine Auswahl einer Combobox1 aus und möchte diesen String ("suchword") gerne als WHERE Bedingung verwenden. Diese Selektion verwende ich dann um die Combobox2 zu füllen.

sub ListeEinschraenken
wait(100)
Dim ComboBox2 as Object, aListe(), bListe()
Dim oSheet1 as object
Dim suchwort as string
'dim x(0,3) as string
oComboBox2 =odialog.getControl("ComboBox2")
Dim s
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Neue Datenbank5.1")
Connection = DataSource.GetConnection("","")
Statement = Connection.createStatement()
oComboBox1 = odialog.getControl("ComboBox1")
suchwort = oComBobox1.text
sStatement = "SELECT DISTINCT Event FROM Tabelle3 WHERE Meisterschaft = suchwort "
oSQLAnweisung = Connection.createStatement()
ResultSet = oSQLAnweisung.executeQuery(sStatement)
i=0
If not isNull (ResultSet) then
Do while ResultSet.Next
i= i+1
s = Resultset.getString(1) '&'Chr(13)
oComboBox2 = odialog.getControl("ComboBox2")
oComboBox2.removeItems(i-1, oComboBox2.getItemCount()) 'schränkt ein wie viele gespeichert werden
oComboBox2.addItem(s,-1) ' beeinflusst ab was für einem Datensatz gespeichert wird
Loop
end if
end sub

Wenn ich anstatt suchword einen festen Begriff verwende:
sStatement = "SELECT DISTINCT Event FROM Tabelle3 WHERE Meisterschaft = 'Formel 1' "
funktioniert alles.
Ich vermute, dass die Maskeirung meiner Variablen suchword bislang immer falsch war, habe bis jetzt schon ziemlich viele Sachen mit ' " & % usw. ausprobiert.

Hoffe man kann verstehen worin mein Problem liegt und jemand kann mir bei meiner Sache weiter helfen, Verzweiflung macht sich nämlich langsam breit bei mir.
Ich verwende eine MySQL Datenbank 5.1 unter OO 3.2 auf Windows 7 64bit. Meine Verbindung läuft denek ich sehr gut, bis jetzt gab es keine Problem mit Treibern oder Ähnlichem!
Vielen Dank schon mal
Gruß Peter

Nach oben