MySQL संग्रहीत कार्यविधियाँ जो डेटासेट उत्पन्न करती हैं, आपको Perl DBD::mysql 4.001 या बाद के संस्करण का उपयोग करने की आवश्यकता होती है। (http://www.perlmonks.org/?node_id=609098 )
नीचे एक परीक्षण कार्यक्रम है जो नए संस्करण में काम करेगा:
mysql> delimiter //
mysql> create procedure Foo(x int)
-> begin
-> select x*2;
-> end
-> //
perl -e 'use DBI; DBI->connect("dbi:mysql:database=bonk", "root", "")->prepare("call Foo(?)")->execute(21)'
लेकिन अगर आपके पास DBD::mysql का बहुत पुराना संस्करण है, तो आपको इस तरह के परिणाम मिलते हैं:
DBD::mysql::st execute failed: PROCEDURE bonk.Foo can't return a result set in the given context at -e line 1.
आप सीपीएएन का उपयोग करके नवीनतम डीबीडी स्थापित कर सकते हैं।