Hallo zusammen,
seit kurzem muss ich mich mit stored procedures auseinander setzen und nach der 1. woche muss ich sagen mysql kann schon eine ganze menge mittlerweile.
leider bin ich seit gestern an einem problem hängen geblieben was einfach keine lösung zu haben scheint und mittlerweile glaube ich das mein weg zur lösung des problems nicht der richtige sein kann. auch hat der 2. tag recherche nicht viel eingebracht und somit hoffe ich auf euch.
Eigentlich ist es ganz simple:
1: Eine stored Procedure befüllt eine Variable "tempstring" mit einem String der letztendlich die Bedingung für ein IN() werden soll.
2: Es soll mit einem CURSOR durch das Ergebnis der Abfrage durchgelaufen werden.
z.B.:
DECLARE cur1 CURSOR FOR SELECT * FROM tablename WHERE fieldname IN(tempstring)
Aber irgendwie sehe ich einfach nicht was daran falsch ist oder wie man so was macht. Wenn ich Das statement so abschicke bekomme ich keine ausgabe. Wenn ich die Variable mit ihrem Inhalt den ich mir ja ausgeben lassen kann ersetze dann funktioniert alles. Was für mich heisst die Variable wird nicht als solche erkannt.
Wenn ich das ganze jetzt dynamisch aufbaue habe ich immer Probleme zum Besipiel mit dem Continue Handler.
Also irgendwie geht es so nicht. Da ich keine Tutorials oder so finden konnte wäre allein die INFO schon mal gut ob man den CURSOR mit PREAPRE und EXECUTE aufbauen kann oder zum Beispiel einfach nur das mal jemand sagt so schon mal gar nicht aber schau mal hier.
Viel Dank
seit kurzem muss ich mich mit stored procedures auseinander setzen und nach der 1. woche muss ich sagen mysql kann schon eine ganze menge mittlerweile.
leider bin ich seit gestern an einem problem hängen geblieben was einfach keine lösung zu haben scheint und mittlerweile glaube ich das mein weg zur lösung des problems nicht der richtige sein kann. auch hat der 2. tag recherche nicht viel eingebracht und somit hoffe ich auf euch.
Eigentlich ist es ganz simple:
1: Eine stored Procedure befüllt eine Variable "tempstring" mit einem String der letztendlich die Bedingung für ein IN() werden soll.
2: Es soll mit einem CURSOR durch das Ergebnis der Abfrage durchgelaufen werden.
z.B.:
DECLARE cur1 CURSOR FOR SELECT * FROM tablename WHERE fieldname IN(tempstring)
Aber irgendwie sehe ich einfach nicht was daran falsch ist oder wie man so was macht. Wenn ich Das statement so abschicke bekomme ich keine ausgabe. Wenn ich die Variable mit ihrem Inhalt den ich mir ja ausgeben lassen kann ersetze dann funktioniert alles. Was für mich heisst die Variable wird nicht als solche erkannt.
Wenn ich das ganze jetzt dynamisch aufbaue habe ich immer Probleme zum Besipiel mit dem Continue Handler.
Also irgendwie geht es so nicht. Da ich keine Tutorials oder so finden konnte wäre allein die INFO schon mal gut ob man den CURSOR mit PREAPRE und EXECUTE aufbauen kann oder zum Beispiel einfach nur das mal jemand sagt so schon mal gar nicht aber schau mal hier.
Viel Dank
Kommentar