knrt.net
当前位置:首页 >> 我用 prEpArEDstAtEmEnt 向数据库插入数据,最后怎么得到生成的SQL >>

我用 prEpArEDstAtEmEnt 向数据库插入数据,最后怎么得到生成的SQL

无它,无论JDBC还是Hiberante都不提供默认解决方案,但是参数是设置进去的,我们在设置的过程中可以有充分的理由来截取并获得自己想要的东西,类似于AOP理论.参考资料里有解决策.如果用ECLIPSE可以用土办法在控制台得到带"?"的语句,然后检查自己赋的参数是否正确.

获得链接部分省略…… String sql = "insert into dept(deptno,deptname,deptadress) values(?,?,?)"; // 获得PreapareStatment 对象 PreapareStatment pst=con.preaparestatment(sql); // 给占位符赋值 pst.setInt(1,11); pst.setString(2,"

靠谱,推荐大家使用.????Connection con = DriverManager.getConnection(url); DebugLevel debug = DebugLevel.ON; String sql = "SELECT name,rate FROM EmployeeTable WHERE rate > ?"; //Use a factory instead of Connection to get a

传送给数据库的 SQL 语句通过一个包含两个步骤的过程来返回结果.首先准备它们,然后处理它们.借助 Statement 对象,这两个阶段对应用程序而言变成一个阶段.PreparedStatement 允许将这两个步骤分开.准备步骤在创建对象时发生,

这个好像做不到,就是根据预先的sql + 你的参数,自己拼接.

看控制台的输出,既然第一个可以,第二个不行,那就是有可能是user这个对象有错误,可能是没有得到值而返回null,自然就没有插入的数据.总之,看好控制台输出报错:)

在实体类中,声明date字段的变量,就可以了再看看别人怎么说的.

首先,需要知道自增id的字段名字,然后就跟楼上说的一样了. 比如字段名叫 sid,那么就是 select max(sid) from 表名

你好!只能打印带问号的sql语句,仅代表个人观点,不喜勿喷,谢谢.

楼上的方法虽然有点搞笑,但还真就想不出什么好的方法来. PreparedStatement接口没有提供什么方法可以完成你的功能. hibernate可以打印sql语句.你可以试试. PreparedStatement接口虽然没有这个功能,而它的实现类也许会有.这要看你用的是什么数据库及驱动了.找到其实现类,也许可以完成你的要求. 也可以自己来写一个驱动,这可能会让人喷血三升.但真的没有什么好办法了.

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com