> # Error Handling

> The JDBC driver reports errors to the calling application by returning SQLExceptions. Errors can be generated by the following components:

> - SequeLink for JDBC driver
> - SequeLink Server
> - Database

> ### Driver Errors

> An error generated by the JDBC driver has the following format:

>     [DataDirect] [SequeLink JDBC Driver] message

> For example:

>     [DataDirect] [SequeLink JDBC Driver] Timeout expired.

> Use the native error code to look up details about the possible cause of the error. For a list of all error codes and messages, refer to the SequeLink Troubleshooting Guide and Reference. Sometimes, you may need to check the last JDBC call your application made and refer to the JDBC specification for recommended action.

> ### SequeLink® Server Errors

> An error generated by SequeLink Server has the following format:

>     [DataDirect] [SequeLink JDBC Driver] [SequeLink Server]
>     message

> For example:

>     [DataDirect] [SequeLink JDBC Driver] [SequeLink Server]
>     Only Select statements are allowed in this read-only
>     connection.

> Use the native error code to look up details about the possible cause of the error. For a list of all error codes and messages, refer to the SequeLink Troubleshooting Guide and Reference.

> ### Database Errors

> An error generated by the database has the following format:

>     [DataDirect] [SequeLink JDBC Driver] [...] message

> For example:

>     [DataDirect] [SequeLink JDBC Driver] [Oracle]
>     ORA-00942:table or view does not exist.

> Use the native error code to look up details about the possible cause of the error. For these details, refer to your database documentation.