这是SQLiteJDBC source code的代码摘录:
public PreparedStatement prepareStatement(String sql, int autoC)
throws SQLException { throw new SQLException("NYI"); }
public PreparedStatement prepareStatement(String sql, int[] colInds)
throws SQLException { throw new SQLException("NYI"); }
public PreparedStatement prepareStatement(String sql, String[] colNames)
throws SQLException { throw new SQLException("NYI"); }
public PreparedStatement prepareStatement(String sql, int rst, int rsc)
throws SQLException {
return prepareStatement(sql, rst, rsc,
ResultSet.CLOSE_CURSORS_AT_COMMIT);
}
我猜 NYI 的意思是“尚未实施”。
如果编译指示没有成功,
sqlite> CREATE TABLE a(col1, col2, col3);
sqlite> CREATE TABLE b(w, x, y, z);
sqlite> SELECT * FROM sqlite_master;
table|a|a|2|CREATE TABLE a(col1, col2, col3)
table|b|b|3|CREATE TABLE b(w, x, y, z)
sqlite> SELECT sql FROM sqlite_master;
CREATE TABLE a(col1, col2, col3)
CREATE TABLE b(w, x, y, z)
您可以从sqlite_master 表中获取实际的列定义并自己解析出来。