我想使用以下实体
org.springframework.jdbc.object
用于对数据库访问进行建模的包。
很清楚如何为选择、更新、插入和删除查询创建对象。我们可以延期
MappingSqlQuery<?>
或
SqlUpdate
然后声明所有参数,在某些映射中收集命名参数并执行语句
stmt.executeByNamedParam(Map<String, ?> paramMap);
.
我们不清楚如何使用
org.springframework.jdbc.对象
包来实现ddl语句,如模式/表创建或更改表。
例如,我想动态创建模式,查询如下:
create schema if not exists schema_name
.
我以下面的方式创建语句:
public final class CreateSchemaStmt extends SqlUpdate {
private static final String CREATE_SCHEMA_SQL_TEMPLATE =
"create schema if not exists ?";
public CreateSchemaStmt(DataSource ds) {
setDataSource(ds);
setSql(CREATE_SCHEMA_SQL_TEMPLATE);
declareParameter(new SqlParameter("schema", Types.VARCHAR));
compile();
}
}
但是,不可能以这种方式声明参数并将其传递给语句执行。
当然,当我需要创建新的模式/表或更改表(使用不带占位符的sql查询)时,我总是可以创建新的语句,但在这种情况下,此语句将不可重用。
是否可以使用命名参数创建和执行此类查询?