¿Hay algún error con "set chained" en setAutoCommit () en net.sourceforge.jtds.jdbc.Driver?

Estoy teniendo alguna confusión con la set chaineddeclaración en el setAutoCommit()método ennet.sourceforge.jtds.jdbc.Driver

El código fuente dice:

2161  if (serverType == Driver.SYBASE) {
2162            if (autoCommit) {
2163                sql.append("SET CHAINED OFF");
2164            } else {
2165                sql.append("SET CHAINED ON");
2166            }

Sin embargo, ¿no debería ser al revés, y el encadenamiento debería estar APAGADO para autoCommit == false?


La razón por la que me encontré con esto es la siguiente:

Estoy escribiendo una aplicación Java que necesita hacer un SQL complicado y revertirlo si alguno falla:

  • Abra la conexión Sybase usando net.sourceforge.jtds.jdbc.Driver

  • Llame a setAutoCommit (falso)

  • Hacer SQL1

  • Llame al proceso almacenado 'MySP1'

    • El procedimiento almacenado MySP1 'NO está bajo mi control

    • Tiene EXEC sp_procxmode 'dbo.MySP1','unchained'

  • Hacer SQL2

  • Si SQL2 falla, revierta todo (incluido SQL1), de lo contrario, confirme.

Una vez hecho esto, recibo el siguiente error de MySP1:

 Stored procedure 'MySP1' may be run only in unchained transaction mode. The 'SET CHAINED OFF' command will cause the current session to use unchained transaction mode.
Respuesta 1

Estoy trabajando en un juego de disparos para el proyecto de programación de mi escuela y utilizando la detección de colisiones con actores. más tarde me di cuenta de que necesitaba usar otro método que pueda devolver a todos los actores en un área ...

Tengo un servidor RMI ejecutándose en el host local, exportando un objeto de tipo Mensaje: intente {MessageServer obj = new MessageServer (); Trozo de mensaje = (Mensaje) UnicastRemoteObject.exportObject (obj, ...

Hay muchas bibliotecas para leer / escribir / agregar texto desde / a un archivo csv en java. ¿Cuál es la biblioteca más eficiente en memoria y CPU para leer texto de un archivo csv? Además, tengo un ...

Soy un principiante en el aprendizaje de la programación Java y estoy haciendo el juego de tic tac toe. Cuando termino mi juego, no puedo seguir jugando porque el programa se cerrará. ¿Qué debo agregar a esto ...