net.sourceforge.jtds.jdbc
Class SQLDiagnostic

java.lang.Object
  extended bynet.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
(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
(package private) SQLDiagnostic(int serverType)
          Create an SQL message for a specific server type.
 
Method Summary
(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 October 27 2012