java – SQLiteJDBC和PreparedStatement使用pragma table_info

我正在使用Java和SQLiteJDBC来使用SQLite.我需要访问给定表的列名,我发现我可以使用以下命令完成此操作:pragma table_info(myTable)但是,尝试执行以下操作时出现错误.PreparedStatement _pstmt =this._DBConnection...

我正在使用Java和SQLiteJDBC来使用SQLite.我需要访问给定表的列名,我发现我可以使用以下命令完成此操作:

pragma table_info(myTable)

但是,尝试执行以下操作时出现错误.

PreparedStatement _pstmt =
    this._DBConnection.prepareStatement("pragma table_info( '?' );",
         new String[] {_tableName} );

java.sql.SQLException: NYI

我不知道NYI意味着什么,而且,我不确定我是否可以做我想做的事情.关于如何获得列名的任何建议?

解决方法:

NYI意味着“尚未实施”.

我猜测命令“pragma table_info”可能不能直接作为预处理语句执行.

有一个在SQLite JDBC驱动程序的类代码中执行该pragma语句的示例,类org.sqlite.Metadata,getColumns()和getPrimaryKeys()等方法.

我无法摘录代码并在此处发布,因为这样做与StackOverflow使用的Creative Commons许可证不兼容.所以请转到该链接并查看.

本文标题为:java – SQLiteJDBC和PreparedStatement使用pragma table_info

基础教程推荐