質問

私はSQLiteので動作するJavaと SQLiteJDBCするを利用しています。私は与えられたテーブルのカラムの名前にアクセスする必要があると私は、次のコマンドでこれを達成することができることを発見しました。

pragma table_info(myTable)
以下の手順を実行しようとすると、

しかし、私はエラーを取得します。

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

ます。java.sql.SQLException:NYI

私はNYIが何を意味するのか見当がつかない、さらに、私は私がやろうとしている何ができるかはわかりません。私は、列名を取得して達成することができますどのように上の任意の提案ですか?

役に立ちましたか?

解決

NYI手段 "はまだ実装されていません。"

私は、コマンドは、「プラグマtable_info」おそらくプリペアドステートメントとして直接実行することはできませんよね。

SQLiteのJDBCドライバのコード内でそのプラグマ文を実行する例があります、クラス<のhref =「http://www.zentus.com/sqlitejdbc/src/src/org/sqlite/MetaData.java」 REL = "nofollowをnoreferrer"> org.sqlite.Metadata を、そのようなgetColumns()getPrimaryKeys()などの方法。

私は、コードを抜粋し、そうすることにStackOverflowで使用されるクリエイティブ・コモンズのライセンスと互換性がないため、それをここに投稿することはできません。だから、そのリンクに移動して見てください。

scroll top