SQLDiagnostic (jTDS API)
Date: 2013-06-08

net.sourceforge.jtds.jdbc

## Class SQLDiagnostic

- java.lang.Object
- - net.sourceforge.jtds.jdbc.SQLDiagnostic

-      class SQLDiagnostic
      extends java.lang.Object

  Helper class for handling SQL warnings and errors.

  Assigns SQL state values in accordance to the native error number returned by the database server.

  Version:
    $Id: SQLDiagnostic.java,v 1.12 2007-08-05 20:17:54 bheineman Exp $
  Author:
    Alin Sinpalean, Mike Hutchinson

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `(package private) java.sql.SQLException` | `exceptions`
    `(package private) java.sql.SQLException` | `lastException`
    `(package private) java.sql.SQLWarning` | `lastWarning`
    `private static java.util.HashMap` | `mssqlStates` Map to convert Microsoft SQL server error codes to ANSI SQLSTATE codes.
    `private int` | `serverType` SQL Server type.
    `private static java.util.HashMap` | `sybStates` Map to convert Sybase SQL server error codes to ANSI SQLSTATE codes.
    `(package private) java.sql.SQLWarning` | `warnings`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SQLDiagnostic(int serverType)` Create an SQL message for a specific server type.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `(package private) void` | `addDiagnostic(int number, int state, int serverity, java.lang.String message, java.lang.String server, java.lang.String procName, int line)` Create a dianostic SQLException or SQLWarning.
    `(package private) void` | `addException(java.sql.SQLException e)`
    `(package private) void` | `addWarning(java.sql.SQLWarning w)`
    `(package private) void` | `checkErrors()` Check the exception chain for errors and throw any found as an SQLException.
    `(package private) void` | `clearWarnings()` Clear the warning chain.
    `private static java.lang.String` | `getStateCode(int number, int serverType, java.lang.String defState)` Map an SQL Server error code to an ANSI SQLSTATE code.
    `(package private) java.sql.SQLWarning` | `getWarnings()` Return the warning chain.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### mssqlStates

          private static final java.util.HashMap mssqlStates

      Map to convert Microsoft SQL server error codes to ANSI SQLSTATE codes. The values in this table are derived from the list compiled by the FreeTDS project. Thank you for the hard work.

    - #### sybStates

          private static final java.util.HashMap sybStates

      Map to convert Sybase SQL server error codes to ANSI SQLSTATE codes. The values in this table are derived from the list compiled by the FreeTDS project. Thank you for the hard work.

    - #### serverType

          private final int serverType

      SQL Server type. Either `Driver.SQLSERVER` or `Driver.SYBASE`.

    - #### exceptions

          java.sql.SQLException exceptions

    - #### lastException

          java.sql.SQLException lastException

    - #### warnings

          java.sql.SQLWarning warnings

    - #### lastWarning

          java.sql.SQLWarning lastWarning

  - ### Constructor Detail

    - #### SQLDiagnostic

          SQLDiagnostic(int serverType)

      Create an SQL message for a specific server type.
      Parameters:
        `serverType` - either `Driver.SQLSERVER` or `Driver.SYBASE`

  - ### Method Detail

    - #### addWarning

          void addWarning(java.sql.SQLWarning w)

    - #### addException

          void addException(java.sql.SQLException e)

    - #### addDiagnostic

          void addDiagnostic(int number,
                           int state,
                           int serverity,
                           java.lang.String message,
                           java.lang.String server,
                           java.lang.String procName,
                           int line)

      Create a dianostic SQLException or SQLWarning.
      Parameters:
        `number` - SQL Server error number.
        `state` - SQL Server state code.
        `serverity` - SQL Server serverity > 10 = error.
        `message` - SQL Server error message text.
        `server` - SQL Server name.
        `procName` - SQL Server stored procedure name.
        `line` - SQL Server error line number in SQL source.

    - #### clearWarnings

          void clearWarnings()

      Clear the warning chain.

    - #### checkErrors

          void checkErrors()
                     throws java.sql.SQLException

      Check the exception chain for errors and throw any found as an SQLException.
      Throws:
        `java.sql.SQLException`

    - #### getWarnings

          java.sql.SQLWarning getWarnings()

      Return the warning chain.
      Returns:
        The warning chain head as a `SQLWarning`.

    - #### getStateCode

          private static java.lang.String getStateCode(int number,
                                      int serverType,
                                      java.lang.String defState)

      Map an SQL Server error code to an ANSI SQLSTATE code.
      Parameters:
        `number` - the SQL Server error number
        `serverType` - `Driver.SQLSERVER` or `Driver.SYBASE`
        `defState` - the default state code to return if the mapping fails
      Returns:
        the SQLSTATE code as a `String`

Generated on June 8 2013