Schlagwortsuche aus Formular? WIE???

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: Schlagwortsuche aus Formular? WIE???

Re: Schlagwortsuche aus Formular? WIE???

von komma4 » Do, 17.01.2008 18:13

Ralle67 hat geschrieben:Ich muss mir wohl doch mal ein StarBasic-Buch zulegen ;-)
Nö, denke ich nicht.

Wenn Du schon so weit, wie beschrieben, gekommen bist helfen Dir Bücher nicht (mehr) weiter.

Bedenke: die Probleme, die nun bei Deinen Versuchen hochkommen, und die Fragestellungen "wie löse ich das?", haben andere auch schon gehabt.

Diese fragten dann hier (oder sonstwo im Netz) und erhielten auf konkrete Fragen (meist) auch konkrete Antworten.

5¢ von mir.

Re: Schlagwortsuche aus Formular? WIE???

von Ralle67 » Do, 17.01.2008 17:17

Hi Barlee,

so klappt es nun:

Code: Alles auswählen

SQL = "SELECT * FROM ""Medien"" WHERE """ & sfeld & """ LIKE '%" & stxt & "%'" 
Die doppelten Anführungszeichen waren der Trick. Die Spalte 'sfeld' musste auch noch in doppelte " gesetzt werden.
Nun kann ich weitermachen...

Ich muss mir wohl doch mal ein StarBasic-Buch zulegen ;-)

Vielen Dank für dein Hilfe!

Gruß
Ralf

Re: Schlagwortsuche aus Formular? WIE???

von Barlee » Di, 15.01.2008 19:47

Hallo Ralf,

hast Du schon eine Lösung?
Ändert sich etwas, wenn Du in der Anweisung

Code: Alles auswählen

 SQL = "SELECT * FROM Tab_Personen WHERE " & sfeld & " LIKE '%" & stxt & "%'"
die Tabelle in doppelte Anführungszeichen (""Tab_Personen"") setzt?

Gruß Barlee

Re: Schlagwortsuche aus Formular? WIE???

von Ralle67 » So, 13.01.2008 23:44

Barlee hat geschrieben:Hallo Ralle,

setze einmal den Tabellennamen in Anführungszeichen. Wie siehts dann aus?

Gruß Barlee
Hmmm, wenn ich folgendes mache,

Code: Alles auswählen

	SQL = "SELECT * FROM "Medien" WHERE " & sfeld & " LIKE '%" & stxt & "%'" 
dann kommt "Basic-Syntaxfeher. Unerwartetes Symbol: Medien.". Sowas hatte ich aber auch erwartet bei Anführungszeichen in Anführungszeichen. Ich habe auch versucht die inneren " durch \" zu tarnen, das brachte aber auch nix.

Code: Alles auswählen

	SQL = "SELECT * FROM 'Medien' WHERE " & sfeld & " LIKE '%" & stxt & "%'" 
Bei diesem Versuch kommt "unexpected Token: Medien...".

Laut diverser Code-Beispiele sollte es eigentlich ohne Anführungszeichen klappen. Allerdings muss man bei einer SQL-Abfrage von Hand schon welche setzen... Verstehe ich nicht...

Gruß
Ralf

Re: Schlagwortsuche aus Formular? WIE???

von Barlee » So, 13.01.2008 23:01

Hallo Ralle,

setze einmal den Tabellennamen in Anführungszeichen. Wie siehts dann aus?

Gruß Barlee

Zu früh gefreut

von Ralle67 » So, 13.01.2008 19:40

Tja, das klappt wohl nicht...
Der folgende Code erzeugt in der letzten Zeile immer eine Exeption: Table not found in statement [SELECT * from Medien].
Die Tabelle heißt aber Medien!

Was mache ich falsch???

Ansonsten klappt alles... Formular wird ausgelesen, SQL-query-string sieht eigentlich auch gut aus... Die Datenquelle habe ich auch eingetragen...

Code: Alles auswählen

REM suche nach Titel
sub Suche_titel
	Dim sText as String
	Dim sFeld as String
	sText = thisComponent.drawpage.forms.getByName("Sucheingabe").getByName("sf1").text
	sFeld = "Titel"
	sql_sucheMedien( sText, sFeld)
end sub

REM  Suchliste wird aufbereitet
sub sql_sucheMedien(stxt, sfeld)
	SQL = "SELECT * FROM Medien WHERE " & sfeld & " LIKE '%" & stxt & "%'" 
	
	DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
	DataSource = DatabaseContext.getByName("Medien Fröbelschule")
	Connection = DataSource.GetConnection("","")
	Statement = Connection.createStatement()
	ResultSet = Statement.executeQuery(SQL)

Re: Schlagwortsuche aus Formular? WIE???

von Barlee » Sa, 12.01.2008 22:23

Hallo Ralle,

ja, da bleibt wohl nur ein Makro.
Dieses muss:
1- das Textfeld auslesen
folgendes könnte helfen:
viewtopic.php?f=8&t=12709&p=63859&hilit ... sen#p63859

2- eine Verbindung zur DB aufbauen und die Abfrage absetzen. Als Suchkriterium muss der ausgelesene Wert genommen werden.
Hier ist der Weg beschrieben, auf Datenbanken mittels BASIC zuzugreifen und Abfragen zu starten:
http://www.dannenhoefer.de/faqstarbasic ... ifen..html

Vielleicht kommst Du damit weiter??
Gruß Barlee

Re: Schlagwortsuche aus Formular? WIE???

von Barlee » Sa, 12.01.2008 16:13

Hallo Ralle67,
aber da ist der Suchbegriff (z.B. WIE '*suchtext*') ja fest und nicht variabel.
Mit einer Parameterabfrage könntest Du den Suchbegriff immer neu definieren.
Siehe u.a.
viewtopic.php?f=8&t=13206&p=52917&hilit ... age#p52917

Gruß Barlee

Nach oben