专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

Java连接access为什么只有select语句有效果增改删成功但实际数据不变_数据库

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 20:11:51       共计:3570 浏览

Java连接access为什么只有select语句有效果增改删成功但实际数据不变?

题主给的问题描述太过简短,那么答主只能根据自己理解的方向来说说可能出现错误的原因:

代码的原因

一般情况下Java连接数据库用的都是jdbc,不知道题主的用最基本的jdbc去写的连接access还是使用框架去配置连接的。

使用框架做配置连接

题主也提到了查询能正常查询,那就证明配置信息内容是完全没有问题的,能够正常使用。那这样的话有可能你做增,删,改的的时候对应的数据本来是没有删除,你的判断写的有问题导致,但是这个可能性应该不大。那就可能是sql语句的问题了,下面在详细的说话sql语句的问题。

使用最原始的jdbc操作

能在增删改上面成功,没有报错那证明你的代码敲的是对的,但是你的对应的引用相互调用多次,可能导致错误,打个比喻:Connection conn=new Connection(连接数据库的字符串);

Statement sta=conn.createStatement();

String sql="添加sql语句";

int count=sta.excute(sql);

然后在下面你可能在次用到Statement对象:

String sql="删除sql语句";

int count=sta.excute(sql);

这个时候你多次使用同一个Statement对象很大可能会出现异常

在可能是你操作的数据库和你查看的数据库不是同一个,刚好都用同样的表格:

比如:

Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/exam?characterEncoding=UTF-8","root", "admin");

你现在操作的是exam数据库里面的表格,但是你现在查看的却是其它数据库;这个可能性也有但是估计也不大。

jdbc和比较传统的hibernatesql语句的问题

如果你是用框架是做的那很大的可能是你配置的sql语句做的是无用操作,什么是无用操作呢?现在数据库里面已经没有了学号为1的学生,但是你还删除这条数据,数据库肯定没有反应。不排除有这种可能但是几率比较小。也有可能你传递过来的删除,修改的条件的条件数据,出现问题也有可能导致删除或者修改失败。

如果你是用jdbc去做的,那很有可能sql语句编写有问题,因为sql语句的字符串拼接其中有很多“ ”和‘ ’的拼接:

比如上图看到的,ssex这个字段在数据库中是一个字符类型,所以在sql语句中需要用‘ ’括起来,这里还要拼一个获取过来的条件。所以‘ ’和“ ”之间的拼接真的很容易出问题。

代码代码,坐等代码

总结:出错的具体原因,真的是需要查看代码才能具体解决,这里能给出来的提示也很有限。以上的出错的原因也是答主自己能给出的几个,希望能帮到题主。

如果有小伙伴有其它的提示,请在评论区留言,或者点个关注我们一起探讨探讨。

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:服务器重启MYSQL启动不了怎么办_数据库 | ·下一条:maxcompute数据类型decimal是什么_数据库

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有