SQLSTATE provides detailed information about the cause of a warning or error. For errors that occur in the data source detected and returned by SQL Server, the SQL Server Native Client ODBC driver maps the returned native error number to the appropriate SQLSTATE. If a native error number does not have an ODBC error code to map to, the SQL Server Native Client ODBC driver returns SQLSTATE 42000 ("syntax error or access violation"). For errors that are detected by the driver, the SQL Server Native Client ODBC driver generates the appropriate SQLSTATE.
For more information about the state error codes, see the following topics: