1
我在写一个执行不同的sql语句(query,dml,ddl,dcl)的程序。我如何确定执行的语句(方法boolean Statement#execute(String s)
)是ddl或dcl。我知道如何确定一个查询。当方法返回true
时,当statement#execute()
返回值为false时,语句是查询,则它可以是dml,ddl或dcl。那么如何确定声明的类型?在jdbc中确定DDL语句
我在写一个执行不同的sql语句(query,dml,ddl,dcl)的程序。我如何确定执行的语句(方法boolean Statement#execute(String s)
)是ddl或dcl。我知道如何确定一个查询。当方法返回true
时,当statement#execute()
返回值为false时,语句是查询,则它可以是dml,ddl或dcl。那么如何确定声明的类型?在jdbc中确定DDL语句
结果的存在(== true)不一定表示查询。例如在PostgreSQL中,DELETE语句也可以返回结果(当使用returning
子句时)。
要处理语句的所有结果或更新计数,您需要实现以下与getMoreResults()
的Javadoc文档的指导方针循环:
有没有更多的结果时,符合下列条件:
// stmt是Statement对象
((stmt.getMoreResults(电流)== FALSE)& &(stmt.getUpdateCount()== - 1))
我编辑了我的问题。我没有告诉我,我正在使用oracle – maks
@maks:获取所有结果和更新计数的规则仍然适用。 –
如果execute(String sql)只能获取一个查询作为参数,execute()方法如何返回多个结果集? – maks