Reputation: 449
How does one check if a select statement inside a stored procedure returns any rows.
select * from creditcards;
If sqlcod = 0 THEN
I'd like to do something like this for example but sqlcod doesn't seem to work in MySql.
Upvotes: 6
Views: 9182
Reputation: 3777
Try using like below also:
Use FOUND_ROWS()
and SQL_CALC_FOUND_ROWS
:
DELIMITER $$
create procedure myproc()
begin
SELECT SQL_CALC_FOUND_ROWS *
FROM tbl_name
WHERE id > 100
LIMIT 10;
if SELECT FOUND_ROWS() = 0 then
-- log away bro!
end if;
end $$
DELIMITER $$
Upvotes: 2
Reputation: 263813
try using COUNT
,
DELIMITER $$
CREATE PROCEDURE procName()
BEGIN
SET @recCount = (select count(*) from creditcards);
If @recCount = 0 THEN
-- statement here ;
END IF;
END $$
DELIMITER ;
Upvotes: 11