读取逗号分隔的字符串并逐条插入表mysql
2016-02-19 15:41
375 查看
需求是这样的:存储过程传的参数是个字符串 (以逗号隔开)类似(1,2,3,4,5)酱紫。o(-"-;)
然后把12345分别插入表中,一个数一行!还要加id~
我一直想用游标还是新建表...后来觉得要新建一张表再用游标插入(╯▽╰ )
想了许久(((φ(◎ロ◎;)φ)))头都大了啦!!
然而,灵机一动灵光一闪,我介么干了(づ ̄3 ̄)づ╭
把传进来的字符串中的‘,‘华丽丽的代替成了插入语句,然后直接插入表⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄ 类似这样
(2,3,4,)----变---> (33,2),(33,3),(33,4); 逗号replace成”),(33,“
call sp_add(33,’2,3,4‘)
工程师给了我个白眼(✿◡‿◡)
然后把12345分别插入表中,一个数一行!还要加id~
我一直想用游标还是新建表...后来觉得要新建一张表再用游标插入(╯▽╰ )
想了许久(((φ(◎ロ◎;)φ)))头都大了啦!!
然而,灵机一动灵光一闪,我介么干了(づ ̄3 ̄)づ╭
SET @i_rp =concat('),(',i_id,','); SET @i_nodeid =replace(i_node,',',@i_rp); SET @i_nodeid1 = concat(i_id,@i_nodeid,',)'); SET @m_sql=CONCAT('INSERT INTO `system_role_node`(role_id,node_id) VALUES (',@i_nodeid1,');'); PREPARE result FROM @m_sql; EXECUTE result; DEALLOCATE PREPARE result;
把传进来的字符串中的‘,‘华丽丽的代替成了插入语句,然后直接插入表⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄ 类似这样
(2,3,4,)----变---> (33,2),(33,3),(33,4); 逗号replace成”),(33,“
call sp_add(33,’2,3,4‘)
工程师给了我个白眼(✿◡‿◡)
相关文章推荐
- MySQL无法连接[MySql Host is blocked because of many connection errors]
- mysql max_allowed_packet 设置过小导致记录写入失败
- 安装unixODBC安装连接mysql
- Ubuntu中MySQL数据库安装
- Mysql-5.7.10启动失败 。
- MySQL中有关icp mrr和bka的特性
- mysql的一些配置
- MySQL数据库的严格模式
- MySQL模糊查询,按关键词匹配度排序
- MySQL数据库管理系统系列之安装配置
- MySQL5.6基于GTID的主从复制
- mysql索引合并:一条sql可以使用多个索引
- mysql sql语句执行顺序
- MySQL++简单使用记录.md
- MySQL性能优化
- mysql 触发器
- Database(Mysql)发版控制二
- 【点滴】Mysql按照IN中的内容排序
- MySQL数据库的严格模式
- 快速对Mysql添加索引的五个方法