oracle存储过程中的return,在mysql中用什么方法可以实现

pilishou 2011-01-11 02:39:22
如题:
我写了两个存储过程,一个过程(A)需要插入记录的某一列,一个人所在的开发小组:(例如:某某分公司/某开发部/第几组)
另外一个存储过程(B)专门是用来封装这个(某某分公司/某开发部/第几组)字符串的。
在A执行的时候调用B来获取那个值。

在Oracle中直接是一个function 来return这个字符串的;
现在数据库迁移到mysql了,请问在mysql中用什么方法来实现?

Oracle中是这样写的:
在A中调用
path:=get_person_path(sid);

get_person_path就是B。
求在mysql中实现方法。
...全文
248 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2011-01-11
  • 打赏
  • 举报
回复
MYSQL中也一样是RETURN。

[Quote=MySQL 5.1参考手册]mysql> delimiter //

mysql> CREATE FUNCTION hello (s CHAR(20)) RETURNS CHAR(50)
-> RETURN CONCAT('Hello, ',s,'!');
-> //
Query OK, 0 rows affected (0.00 sec)

mysql> delimiter ;

mysql> SELECT hello('world');
+----------------+
| hello('world') |
+----------------+
| Hello, world! |
+----------------+
1 row in set (0.00 sec)
如果在存储函数中的RETURN语句返回一个类型不同于在函数的RETURNS子句中指定类型的值,返回值被强制为恰当的类型。比如,如果一个函数返回一个ENUM或SET值,但是RETURN语句返回一个整数,对于SET成员集的相应的ENUM成员,从函数返回的值是字符串。

[/Quote]
oraclemch 2011-01-11
  • 打赏
  • 举报
回复
[Quote=引用楼主 pilishou 的回复:]
如题:
我写了两个存储过程,一个过程(A)需要插入记录的某一列,一个人所在的开发小组:(例如:某某分公司/某开发部/第几组)
另外一个存储过程(B)专门是用来封装这个(某某分公司/某开发部/第几组)字符串的。
在A执行的时候调用B来获取那个值。

在Oracle中直接是一个function 来return这个字符串的;
现在数据库迁移到mysql了,请问在mysql中用什么方法来实现?……
[/Quote]

貌似叫leave吧!
rucypli 2011-01-11
  • 打赏
  • 举报
回复
leave

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧