Variabelen (MySQL)

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Ook buiten sprocs kun je met variabelen hobbyen. Bv.:

set @aanbod = true;
select @aanbod;
1

Om de ééndimensionale output van een query aan een variabele toe te wijzen, moet je haakjes om de query gebruiken, met de punk-komma buiten het sluithaakje:

set @ouder=(select tid from term_data where name = "DeWalt" and description = "Koolborstels voor DeWalt");

Input-argumenten bij sprocs

Een input-argument (of hoe dat moge heten) in een sproc, heeft geen '@' nodig, maar er zijn wel beperkingen:

CREATE DEFINER=`root`@`localhost` PROCEDURE `ExportFixNull`(in tblname tinytext )
BEGIN

   select tblname;           -- Dit werkt!
   select * from tblname;    -- Werk niet: Foutmelding dat tabel 'tblname' niet bestaan
   select * from @tblname;   -- Syntax error

END

Wat hoe dan ook werkt: Een string samenstellen en executeren, werkt in ieder geval wel.

Bronnen