Hoort bij: MySQL — Tags:, , , , , — admin @ 31 juli 2008 11:44

Als je soms met stored procedures in MySQL werkt dan heb je waarschijnlijk het limit probleem al eens tegen het lijf gelopen.

Om de één of andere reden kan MySQL er niet tegen dat je een parameter meegeeft aan limit. De volgende stored procedures zal dan ook een error geven.

0
1
2
3
4
5
BEGIN
PREPARE STMT FROM "SELECT *
FROM Members
LIMIT ?";
EXECUTE STMT USING in_limit
END

Het is echter wel mogelijk om een user variable mee te geven aan een limit. Wat je dus gaat doen is een user variable aanmaken met als waarde de input variable. Vervolgens geef je de user variable mee aan de limit.

Een user variable maak je aan als volgt. De naam van de input variable is in dit voorbeeld in_limit.

0
SET @in_limit = in_limit;

De werkende stored procedure ziet er dus als volgt uit.

0
1
2
3
4
5
6
BEGIN
SET @in_limit = in_limit;
PREPARE STMT FROM "SELECT *
FROM Members
LIMIT ?";
EXECUTE STMT USING @in_limit
END
Stem of voeg toe aanUitleg over het gebruik van deze icons :  Plaatsen/stemmen op NUjij Plaatsen/stemmen op eKudos Plaatsen/stemmen op MSN Reporter Plaatsen/stemmen op Digg Stumble it! Voeg dit artikel toe aan Del.icio.us Voeg toe aan je Google bladwijzers Abonneer je op de RSS-feed van deze site Verstuur deze pagina per e-mail via Feedburner

Reacties

Reageren? »

Reageren?

Berichten RSS voor reacties op dit bericht. TrackBack URL

Geef een reactie