mysql procedure 查询_Mysql PROCEDURE 里面 的查询是返回的全结果?

疑问如题,下面是过程结构,请问这是咋回事呢?

mysql> SHOW CREATE PROCEDURE getmessage;

+------------+----------+-------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------

--------------------+----------------------+--------------------+

| Procedure | sql_mode | Create Procedure

haracter_set_client | collation_connection | Database Collation |

+------------+----------+-------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------

--------------------+----------------------+--------------------+

| GetMessage | | CREATE DEFINER=`root`@`localhost` PROCEDURE `GetMessage`(

msgname varchar(45)

)

BEGIN

declare msg int;

set msg = ( select count( `idMessages` ) from `messages` where ( `isDeleted` is null or `isDeleted` <> 1 ) and `MsgName` = msgname );

if msg < 1 then

begin

INSERT INTO `chinatelecom`.`messages` (`MsgID`, `MsgName`, `MsgResult`, `AddUser`)

VALUES ( LEFT( CONCAT( 'NO_MSG-000',RAND() ), 20 ) , msgname , 'this message haven\'t defined', '-2');

call GetMessage( 'MESSAGE_NOT_DEFINED' );

end;

else

begin

select ( 0 - `idMessages` ) as returned,

`MsgID` as MessageID,

`MsgName` as MessageName,

`MsgResult` as MessageResult

from `messages`

where `MsgName` like msgname; -- ( `isDeleted` is null or `isDeleted` <> 1 )

-- and

end;

end if;

END | utf8 | utf8_general_ci | latin1_swedish_ci |

+------------+----------+-------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------

--------------------+----------------------+--------------------+

1 row in set (0.00 sec)

mysql> call addtreebytypename('test','test',-1);

+----------+------------------+------------------------------------+------------------------------+

| returned | MessageID | MessageName | MessageResult |

+----------+------------------+------------------------------------+------------------------------+

| -1 | MSG-0001 | TREES_TYPE_HAS_DEFINED_BUT_DELETED | A message haven't defined |

| -2 | NO-MSG-0000.6085 | TREES_TYPE_HAS_DEFINED_BUT_DELETED | this message haven't defined |

+----------+------------------+------------------------------------+------------------------------+

2 rows in set (0.01 sec)

Query OK, 0 rows affected (0.11 sec)

mysql> select ( 0 - `idMessages` ) as returned,

-> `MsgID` as MessageID,

-> `MsgName` as MessageName,

-> `MsgResult` as MessageResult

-> from `messages`

-> where `MsgName` like 'TREES_TYPE_HAS_DEFINED_BUT_DELETED';

+----------+------------------+------------------------------------+------------------------------+

| returned | MessageID | MessageName | MessageResult |

+----------+------------------+------------------------------------+------------------------------+

| -2 | NO-MSG-0000.6085 | TREES_TYPE_HAS_DEFINED_BUT_DELETED | this message haven't defined |

+----------+------------------+------------------------------------+------------------------------+

1 row in set (0.00 sec)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值