【发布时间】:2017-03-03 08:03:41
【问题描述】:
有没有办法为
获得“受影响的行”结果SELECT * INTO TableB FROM TableA
使用 Microsoft 的 SQL Server JDBC 驱动程序?当我在 SQL Server Management Studio 中执行该查询时,它以与 DELETE、INSERT 或 UPDATE 相同的方式返回行数。
我尝试了executeQuery,但它没有返回ResultSet。我尝试了executeUpdate,但结果总是得到-1,我尝试了execute,但返回值似乎是false,所以没有ResultSet。
我从 31.01.2017 下载了 MS JDBC 驱动程序 6.0,因为我读到了旧版本的问题。
【问题讨论】:
-
SELECT * FROM TableA不会为您提供所需的结果集吗?它将包含您的SELECT INTO已插入TableB的所有行。如果您知道TableA可能会被外部修改,您也可以将两者包含在事务中。 -
使用
executeUpdate是正确的方法。众所周知,MS JDBC 驱动程序质量低下,因此您总是得到-1可能是驱动程序的错。如果使用jtDS 驱动程序可以获得更好的结果,您可能想尝试一下。 -
ok thx,然后就像我想的那样,ms jdbc 解决了这个问题。
标签: java sql-server jdbc mssql-jdbc