mysql存储过程中可以用字符串替换函数REPLACE吗?

itemshouse 2010-12-15 05:22:36
如题
...全文
516 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
itemshouse 2010-12-15
  • 打赏
  • 举报
回复
谢谢楼上两位
ACMAIN_CHM 2010-12-15
  • 打赏
  • 举报
回复
REPEAT
FETCH c_products INTO v_products_id, v_products_name;
set v_products_name=REPLACE(v_products_name, '2003', '2010');
SELECT v_products_name;
UNTIL no_more


楼主需要学习一下语法基础。
zuoxingyu 2010-12-15
  • 打赏
  • 举报
回复
REPLACE(v_products_name, '2003', '2010');

改成
select REPLACE(v_products_name, '2003', '2010');
itemshouse 2010-12-15
  • 打赏
  • 举报
回复
那帮我看看这一段什么问题吧,为什么注释掉
REPLACE(v_products_name, '2003', '2010');

就可以,而不注释就保存不了呢?
BEGIN
#Routine body goes here...
DECLARE no_more INT DEFAULT 0;
DECLARE v_products_name VARCHAR(150);
DECLARE v_products_id int;
DECLARE c_products CURSOR FOR SELECT products_id, products_name FROM products_description;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET no_more = 1;
OPEN c_products;
REPEAT
FETCH c_products INTO v_products_id, v_products_name;
REPLACE(v_products_name, '2003', '2010');
SELECT v_products_name;
UNTIL no_more
END REPEAT;
CLOSE c_products;
END
zuoxingyu 2010-12-15
  • 打赏
  • 举报
回复
可以。很负责任的告诉你。
itemshouse 2010-12-15
  • 打赏
  • 举报
回复
我试过了好像不行,但又不确信,因为从未接触过存储过程,所以才问问
ACMAIN_CHM 2010-12-15
  • 打赏
  • 举报
回复
[Quote]REPLACE(str,from_str,to_str)
返回字符串str 以及所有被字符串to_str替代的字符串from_str 。

mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');

-> 'WwWwWw.mysql.com'

这个函数支持多字节字元。

[/Quote]
ACMAIN_CHM 2010-12-15
  • 打赏
  • 举报
回复
显然可以!

这种问题其实自己稍微动手一试就知道结果了。 或者MYSQL的手册中一查也就知道了。

56,675

社区成员

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

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