Variabelen (MySQL): verschil tussen versies

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
Regel 24: Regel 24:
 
</pre>
 
</pre>
  
Wat hoe dan ook werkt: Een string samenstellen en executeren, werkt in ieder geval wel.
+
Wat hoe dan ook werkt: Een string (inclusief variabelen) samenstellen en executeren.
  
 
== Bronnen ==
 
== Bronnen ==
  
 
* https://dev.mysql.com/doc/refman/5.1/en/control-flow-functions.html
 
* https://dev.mysql.com/doc/refman/5.1/en/control-flow-functions.html

Versie van 22 jan 2016 14:20

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 (inclusief variabelen) samenstellen en executeren.

Bronnen