点击按钮执行SQL语句 更新数据库 -- 存储过程修改

我有很多条数据需要判断正误,我设计了两个按钮。想法是点击绿色按钮,修改数据库opinion为correct,红色按钮是incorrect。

目前我定义了存储过程


CREATE DEFINER=`root`@`%` PROCEDURE `pro_correct`()
BEGIN
 UPDATE lz_event 
    SET opinion = 'correct',
reviewed ='yes'
    WHERE ID  IS NOT NULL ;
END

但是无法对某单个数据进行更改,一点击某个按钮所有都改了

我觉得是where后面的问题,求大神修改!!!

FineReport cyndyxie 发布于 2019-4-8 10:32
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
静听禅鸣Lv6高级互助
发布于2019-4-8 10:44(编辑于 2019-4-8 10:45)

 FR.remoteEvaluate("sql(\"his\",\"select t.Unitname from rqf_Item_PackageUnit t where t.ItemID=\'"+a+"\' ORDER BY t.Factor\",1,1)");
FR.remoteEvaluate(sql函数(sql更新语句,1,1) 

 你看啊,你这个因为是要更新一条SQL的,所以你的按钮需要获取每一行的ID
你可以在按钮的JS里写这样的更新的SQL语句,把你的ID传进去就OK了


最佳回答
0
吾姓独孤Lv6高级互助
发布于2019-4-8 10:35

哥,你的绿色和红色代表的是什么意思呢,比如点击绿色是因为字段1的值是true,点击红色是因为字段1的值是false,红色绿色不是真的条件,你的sql里应该是缺少了条件

  • cyndyxie cyndyxie(提问者) 我知道缺条件,我问的就是如何设置条件
    2019-04-09 13:09 
  • 吾姓独孤 吾姓独孤 回复 cyndyxie(提问者) 我不知道你的是啥条件啊,就比如我举的例子里的是根据字段值来的,你的需求是什么,就按什么设置条件啊,我们不知道你的需求没办法帮你弄的
    2019-04-09 13:16 
  • cyndyxie cyndyxie(提问者) 回复 吾姓独孤 对每一条数据进行修改,主键是ID
    2019-04-09 16:44 
  • 吾姓独孤 吾姓独孤 回复 cyndyxie(提问者) 你在按钮里设置自定义提交试试
    2019-04-09 18:49 
  • 吾姓独孤 吾姓独孤 回复 cyndyxie(提问者) 绿色的按钮一种自定义提交,红色的一种,俩个按钮跟随每个id扩展
    2019-04-09 18:50 
最佳回答
0
KevinGaoLv2初级互助
发布于2019-4-8 10:35

你这个WHERE 条件只要ID不是NULL的都改啊你要在WHERE条件上指定改那条

  • cyndyxie cyndyxie(提问者) 我知道是where后面的问题,所以问怎么改。如何取ID呢大神???
    2019-04-08 11:50 
  • KevinGao KevinGao 回复 cyndyxie(提问者) 你显示出来这条记录的时候没有把这条记录的ID取出来么?
    2019-04-08 14:27 
  • cyndyxie cyndyxie(提问者) 回复 KevinGao 取了。存储过程怎么修改?
    2019-04-08 18:13 
  • KevinGao KevinGao 回复 cyndyxie(提问者) 储存过程中新增一个参数,把这个ID传进去 UPDATE lz_event SET opinion = \'correct\', reviewed =\'yes\' WHERE ID IS NOT NULL and id = 传进来的ID
    2019-04-08 19:37 
  • cyndyxie cyndyxie(提问者) 回复 KevinGao CREATE DEFINER=`root`@`%` PROCEDURE `pro_incorrect`(in H2 integer) BEGIN UPDATE lz_event SET opinion = \'incorrect-test\', reviewed =\'yes\' WHERE ID IS NOT NULL and ID = H2 ; END
    2019-04-09 11:34 
最佳回答
0
臧晓峰Lv4中级互助
发布于2019-4-8 10:40(编辑于 2019-4-8 10:41)

这个存储过程将两个条件都合并,所以一改肯定都改了,需要拆分成两个存储过程,每次只改一个字段其实我感觉你想要的不就是单独点击某个按钮修改某个字段吗,在按钮上加事件选择提交入库  设置主键  不需要存储过程就能实现

最佳回答
0
dltom@qq.comLv2见习互助
发布于2019-4-8 10:42

没限制ID,WHERE ID  IS NOT NULL是所有id不为空的都处理

  • cyndyxie cyndyxie(提问者) 我知道是where后面的问题,所以问怎么改。如何取ID呢大神???
    2019-04-08 11:50 
  • 6关注人数
  • 2312浏览人数
  • 最后回答于:2019-4-8 10:45
    请选择关闭问题的原因
    确定 取消
    返回顶部