PreparedStatement setString失效求解

scorecrow 2018-03-27 11:16:13
场景:实现条记录的更新,传入拼接过后的条件(No)
String sql = "UPDATE FB_J_FAULT_SHEET f SET f.DISTRIBUTION_STATUS = 1,f.DUTY_PERSON = ?"+
" WHERE f.SHEET_STREAM_NO in (?)";
Set<String> idSet = update_codition.keySet();
for(String key:idSet){
ps = conn.prepareStatement(sql);
ps.setString(1, key);
System.out.println(update_codition.get(key));
System.out.println(update_codition.get(key).substring(6,update_codition.get(key).length()-1));
ps.setString(2, update_codition.get(key).substring(6,update_codition.get(key).length()-1));//删除前6位 null,' 后一位'
System.out.println(ps.executeUpdate());
}

结果
null,'CTG1803140033111193'
CTG1803140033111193
1
null,'CTG17050800041171802','CTG17042600041171801'
CTG17050800041171802','CTG17042600041171801
0


操作依据,setString会自动给设置参数添加单引号。
...全文
658 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
scorecrow 2018-03-27
  • 打赏
  • 举报
回复
在线等,急
内容概要:本文详细介绍了MySQL中InnoDB存储引擎的逻辑存储结构及其表分区技术。InnoDB的逻辑存储单元由高到低依次为表空间、段、区、页和行,其中表空间包括系统表空间、独立表空间、通用表空间、Undo表空间和临时表空间,每种表空间具有不同的用途和管理方式。文章进一步讲解了表分区的概念与类型,包括RANGE、LIST、HASH、KEY以及多字段COLUMNS分区,阐述了分区的优势如提升查询性能、便于数据维护、支持跨物理设备存储等,并列举了实际SQL操作示例,帮助理解分区表的创建、修改、删除及重组等操作。同时指出了分区的限制条件,如最大分区数量、主键约束要求等。; 适合人群:具备一定MySQL数据库基础,从事数据库开发、运维或架构设计的技术人员,尤其是工作中涉及大数据量表管理与性能优化的1-3年经验研发人员。; 使用场景及目标:①深入理解InnoDB存储机制,优化数据库物理结构设计;②掌握表分区技术,应用于海量数据存储与高效查询场景,如日志系统、订单系统的时间分区设计;③通过分区实现数据归档、快速删除历史数据、提升查询性能等运维目标; 阅读建议:学习时应结合MySQL实际环境动手实践文中提供的SQL命令,重点关注表空间管理和分区策略的选择,理解其对性能和维护的影响,并注意分区使用中的限制条件以避免设计失误。

51,408

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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