相同的预准备语句,多个数据库,相同的模式

时间:2016-09-13 16:40:07

标签: sql-server jdbc mssql-jdbc

我有多个ms sql server数据库x1,x2,x3,... xn,实际上是所有相同的模式类型和一个不同的数据库y并保存管理数据。

我正在使用jdbc预处理语句,有时需要在一个程序中从多个x数据库执行相同的预处理语句。

如果预准备语句的SQL未指示数据库:

准备好的语句是否与服务器关联,如果执行是在根据上下文选择的数据库上执行,例如遵循USE声明。

OR是否永远与连接URL中的默认数据库相关联?如果是这样,并且我仍然想使用preprepared语句,我必须为每个单独的数据库创建一个准备好的语句,即使模式和语句本质上是相同的。

1 个答案:

答案 0 :(得分:1)

我非常肯定(但不是100%肯定)预准备语句绑定到特定数据库。鉴于查询计划必须评估每个数据库中不同的索引和表统计信息。

由于这似乎是一个内部系统,并且SQL注入可能不是问题 - 我会使用直接执行或stmt.executeQuery(查询)。