SQLSetEnvAttr function (CLI) - Set environment attribute
SQLSetEnvAttr()
sets an environment attribute
for the current environment.
Specification:
- CLI 2.1
- ISO CLI
Syntax
SQLRETURN SQLSetEnvAttr (SQLHENV EnvironmentHandle, /* henv */
SQLINTEGER Attribute,
SQLPOINTER ValuePtr, /* Value */
SQLINTEGER StringLength);
Function arguments
Data type | Argument | Use | Description |
---|---|---|---|
SQLHENV | EnvironmentHandle | Input | Environment handle. |
SQLINTEGER | Attribute | Input | Environment attribute to set; refer to the list of CLI environment attributes for descriptions. |
SQLPOINTER | ValuePtr | Input | Value for the Attribute. |
SQLINTEGER | StringLength | Input | Length of ValuePtr in bytes if the attribute value is a character string; if Attribute does not denote a string, then CLI ignores StringLength. |
Usage
Once set, the attribute's value affects all connections under this environment.
The application can
obtain the current attribute value by calling SQLGetEnvAttr()
.
Refer to the list of CLI environment attributes for the attributes that can be
set with SQLSetEnvAttr()
.
Return codes
- SQL_SUCCESS
- SQL_SUCCESS_WITH_INFO
- SQL_ERROR
- SQL_INVALID_HANDLE
Diagnostics
SQLSTATE | Description | Explanation |
---|---|---|
HY011 | Operation invalid at this time. | Applications cannot set environment attributes while connection handles are allocated on the environment handle. |
HY024 | Invalid attribute value | Given the specified Attribute value, an invalid value was specified in *ValuePtr. |
HY090 | Invalid string or buffer length | The StringLength argument was less than 0, but was not SQL_NTS. |
HY092 | Option type out of range. | An invalid Attribute value was specified. |
HYC00 | Driver not capable. | The specified Attribute is not supported
by CLI. Given specified Attribute value, the value specified for the argument ValuePtr is not supported. |
Restrictions
None.
Example
/* set environment attribute */
cliRC = SQLSetEnvAttr(henv, SQL_ATTR_OUTPUT_NTS, (SQLPOINTER) SQL_TRUE, 0);