System variable are always accessible in SQL. Some of them have a defined value only in certain situations, e.g. when a specific action is complete or in an error handler. You can use the value of any system variable in SQL, but you can explicitly assign a new value only to some of these properties.
Each client has its own values of system variables.
| Name |
Type |
Can be modified? |
Description |
| @@PLATFORM |
INT |
No |
Number of the server platform |
| @@ROWCOUNT |
INT |
No |
Number of inserted/modified/deleted rows with the last INSERT/UPDATE/DELETE statement |
| @@SQLOPTIONS |
INT |
Yes |
SQL compatibility attributes settings |
| @@WAITING |
INT |
Yes |
Time limit for waiting for freeing resources, in tenths of seconds |
| @@LAST_EXCEPTION |
CHAR(31) |
No |
Name of the last exception or sqlstate - details |
| SQLCODE |
INT |
No |
Number of the currently handled error |
| SQLSTATE |
CHAR(5) |
No |
Valid sqlstate - code of the error state |
| @@ERROR_MESSAGE |
CLOB |
No |
Text information about the last error |
| @@ROLLED_BACK |
BOOLEAN |
No |
A flag showing that last transaction was rolled back due to an error - details |
| @@FULLTEXT_POSITION |
INT |
No |
The occurrence of the word or phrase searched for in a document |
| @@FULLTEXT_WEIGHT |
INT |
No |
The fulltext weight of the word or phrase searched for in a document - not used in the current version. |
| @@ACTIVE_RI_IN_PROGRESS |
BOOLEAN |
No |
TRUE if there's some active referential integrity action underway |
| @@IDENTITY |
BIGINT |
No |
Last value get from a sequence or from a unique keys generator bound to a table (UNIQUE) |