mysql的statement相关方法

mysql的statement相关方法,第1张

中断正在执行的sql方式

1.statement的cancel方法:发生一个kill query 服务的线程id

2.statement的close方法 :发生一个command到服务器端(对于serverPrepareMent),其他的statement都是 关闭所有resultSet

3.获取information_schema.processlist,找到对应语句执行的id,然后执行kill命令

执行静态SQL语句。通常通过Statement实例实现。

执行动态SQL语句。通常通过PreparedStatement实例实现。

Statement

每次执行sql语句,数据库都要执行sql语句的编译

,最好用于仅执行一次查询并返回结果的情形,效率高于PreparedStatement

你只知道什么是接口,却不知道为什么要使用接口。

听说接口回调这个说法吗。你必须关心statement是怎么来的。

Statement statement=connection.creStatement()

问题就在这句话里面。 connection.creStatement()返回的到底是什么?

请你仔细想好再回答。

其实connection.creStatement()返回的是一个实现了statement接口的类。

当然你不知道到底是哪个类,你只要知道它实现了statement接口就行,然后用接口的引用去指向那个类就叫接口回调。 你想想,你要开灯只要按一下那个开关,相当于那个接口引用,至于那个开关具体是怎么实现开关灯功能的你不知道,你也不需要知道,对使用者来说,这就是接口的一大好处。因为具体返回哪个类由Connection类来决定,而且恰恰那个类也不用你写。

那么现在你应该知道 了,statement.execute()实现了没有。 也就是人家帮你实现了那个接口,你只管用,不用关具体怎么实现的,因为,那个方法需要什么参数,有什么功能在接口里已经写的很清楚了。

再给你一个接口回调的例子。迭代器的实现

HashSet set=new HashSet()

Iterator it=set.iterator()

由hashset来决定怎么去实现iterator接口,你只管定义接口引用,然后就去使用接口里有的方法就行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10808297.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存