Ask a Question related to MySQL, Design and Development.
-
martinacevedo@gmail.com #1
Prepared Statements within stored procedures
I have a stored proceduren with a prepared statement inside, I would
like to put the result fields into variables but I donīt know how,
Should I use some kind of cursor? How can I put the COUNT(*) field into
a variable at stored procedure scope?
CREATE PROCEDURE `GetPortability`(p_table VARCHAR(50), p_number
VARCHAR(50))
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT ''
BEGIN
SET @l_sql = CONCAT('SELECT COUNT(*) FROM ',p_table,' WHERE Prefix
LIKE \'',p_number , '\';');
PREPARE stmt1 FROM @l_sql;
EXECUTE stmt1 ;
DEALLOCATE PREPARE stmt1;
END;
Thank you....
martinacevedo@gmail.com Guest
-
#40695 [NEW]: odbc_execute/prepared statements does not work with Access
From: a at bc dot de Operating system: Windows PHP version: 5.2.1 PHP Bug Type: ODBC related Bug description: ... -
#40277 [NEW]: BLOB objects are fetched badly via prepared statements
From: zakirov at rain dot ifmo dot ru Operating system: FreeBSD, Windows PHP version: 5.2.0 PHP Bug Type: MySQLi related Bug... -
#36402 [Com]: PDO_MYSQL prepared statements cause Out of memory or data corruption
ID: 36402 Comment by: ayuzhakov at swsoft dot com Reported By: joh at deworks dot net Status: No Feedback Bug... -
Prepared statements in ASP
I am trying to create a prepared statement in ASP, but am having problems with creating the parameter object. I do the following Set fnParam =... -
#6976 [Fbk->Csd]: ibase_query can't execute SQL statements that can't be prepared
ID: 6976 Updated by: abies@php.net Reported By: mlemos at acm dot org -Status: Feedback +Status: ... -
Giuseppe Maxia #2
Re: Prepared Statements within stored procedures
[email]martinacevedo@gmail.com[/email] wrote:
You can do it through a user variable.> I have a stored proceduren with a prepared statement inside, I would
> like to put the result fields into variables but I donīt know how,
> Should I use some kind of cursor? How can I put the COUNT(*) field into
> a variable at stored procedure scope?
>
> CREATE PROCEDURE `GetPortability`(p_table VARCHAR(50), p_number
> VARCHAR(50))
> NOT DETERMINISTIC
> SQL SECURITY DEFINER
> COMMENT ''
> BEGIN
> SET @l_sql = CONCAT('SELECT COUNT(*) FROM ',p_table,' WHERE Prefix
> LIKE \'',p_number , '\';');
>
> PREPARE stmt1 FROM @l_sql;
> EXECUTE stmt1 ;
>
> DEALLOCATE PREPARE stmt1;
> END;
> Thank you....
>
For example:
delimiter //
drop procedure if exists GetPortability //
CREATE PROCEDURE `GetPortability`(p_table VARCHAR(50))
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT ''
BEGIN
declare myvar int;
SET @l_sql = CONCAT('set @result = (SELECT COUNT(*) FROM ',p_table, ')' );
PREPARE stmt1 FROM @l_sql;
EXECUTE stmt1 ; -- here @result gets the value of COUNT(*)
DEALLOCATE PREPARE stmt1;
set myvar = @result;
-- do something with myvar
END//
delimiter ;
An alternative could be:
SET @l_sql = CONCAT('SELECT @result := COUNT(*) FROM ',p_table );
But it would also produce a dataset, which may not be what you want.
ciao
gmax
--
_ _ _ _
(_|| | |(_|>< The Data Charmer
_|
[url]http://datacharmer.org/[/url]
Giuseppe Maxia Guest
-
martinacevedo@gmail.com #3
Re: Prepared Statements within stored procedures
Thank you Giusseppe, it works perfectly ...
Bye
martinacevedo@gmail.com Guest
-
Unregistered #4
Re: Prepared Statements within stored procedures
Uh, what happened to the "WHERE Prefix..."?
Unregistered Guest



Reply With Quote

