使ってみた
SELECT COUNT(*) FROM :TableName;
そして、私が使用したJDBIで
.bind("Tablename", "MyTable")
結果は常に一重引用符で囲まれます。
SELECT COUNT(*) FROM 'MyTable';
のようなものをパラメータ化する適切な方法はありますかTableName
?
import org.skife.jdbi.v2.sqlobject.customizers.Define;
import org.skife.jdbi.v2.sqlobject.stringtemplate.UseStringTemplate3StatementLocator;
@UseStringTemplate3StatementLocator
public interface CreateTableDAO {
@SqlUpdate("create table if not exists <table> (" +
"startTime TimeStamp not null," +
"stopTime TimeStamp not null," +
"uuid varchar(255)" +
")")
public void createTable(@Define("table") String table);
}
UseStringTemplate3StatementLocator アノテーションの依存関係を追加することを忘れないでください
<dependency>
<groupId>org.antlr</groupId>
<artifactId>stringtemplate</artifactId>
<version>3.2</version>
</dependency>