navicat for mysql创的存储过程没有返回值,调用了,查询的时候没有返回值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了navicat for mysql创的存储过程没有返回值,调用了,查询的时候没有返回值相关的知识,希望对你有一定的参考价值。
delimiter $$
CREATE PROCEDURE TEST(OUTnumber1 INTEGER)
BEGIN
DECLARE number2 INTEGER;
SET number2=(SELECT COUNT(*)FROM student);
SET number1=number2;
END $$
delimiter
调用:call test(@number)
查询:select @number
SET number2=(SELECT COUNT(*)FROM student);
其次,CREATE PROCEDURE TEST(OUTnumber1 INTEGER) 中OUTnumber1中间没空格隔开
最后call test(@number),括号问题,中文情况下输入。可能是文本复制后的原因吧
正确的存储过程已写好,测试过:
drop PROCEDURE IF EXISTS TEST;
delimiter &&
CREATE PROCEDURE TEST(OUT number1 INTEGER)
BEGIN
DECLARE number2 INTEGER;
SELECT COUNT(*) into number2 FROM student;
set number1 = number2;
END &&
delimiter ;
call test(@number);
select @number;
希望对你有帮助本回答被提问者采纳
navicat for mysql 下测试储存过程
写好的一个存储过程TS_Pro_AddMyBrowse 有返回参数
begin declare d_row int default 0; start TRANSACTION; insert into ts_mybrowse(UserID,ArticleID,FromUserID,ArticleTitle,BrowsingTime) values(UserID,ArticleID,FromUserID,ArticleTitle,BrowsingTime); select ROW_COUNT() into d_row; if(d_row>0) then set ReturnValuex=1; commit; else set ReturnValuex=-1; rollback; end if; end
新建查询:
CALL TS_Pro_AddMyBrowse(@1,‘1000017‘,‘883‘,‘113505‘,‘趣味物理大全‘,‘2016-02-17 11:41:42‘)
[SQL] CALL TS_Pro_AddMyBrowse(@1,‘1000017‘,‘883‘,‘113505‘,‘趣味物理大全‘,‘2016-02-17 11:41:42‘)
受影响的行: 0
时间: 0.155s
以上是关于navicat for mysql创的存储过程没有返回值,调用了,查询的时候没有返回值的主要内容,如果未能解决你的问题,请参考以下文章
navicat for MySQL中的 查询编辑器中如何执行存储过程?