Static Public Member Functions | |
_.Library.Integer | CloseAllGateways () |
This method closes all the open ODBC/JDBC Gateway connections and unloads the SQL Gateway shared library. | |
_.Library.String | GetDefaultCollation () |
This entrypoint returns the current default collation name for Library.String datatype in current namespace. More... | |
_.Library.String | GetMapSelectability (_.Library.String pTablename, _.Library.String pMapname) |
This entrypoint is used to determine if an SQL Map definition is selectable by the SQL Query Optimizer or not. More... | |
_.Library.String | GetOption (_.Library.String pOption) |
Given one of the following valid, case-insensitive values for pOption, return the current value for that option. More... | |
_.Library.Integer | GetXDBCConnectionLimit () |
This entrypoint returns the current setting for xDBC Server process connection limit. More... | |
_.Library.Status | SetDDLIdentifierTranslations (_.Library.String from, _.Library.String to, _.Library.String oldfrom, _.Library.String oldto) |
Sets the DDL Identifier Translation mappings configuration settings. More... | |
_.Library.Status | SetDefaultCollation (_.Library.String newValue, _.Library.Boolean systemWide, _.Library.String oldValue) |
This entrypoint is used set the default collation for Library.String datatype. More... | |
_.Library.Status | SetMapSelectability (_.Library.String pTablename, _.Library.String pMapname, _.Library.Boolean pValue) |
This entrypoint is used to make an SQL Map definition [not] selectable to the SQL Query Optimizer. More... | |
_.Library.Status | SetOption (_.Library.String pOption, _.Library.String pValue, _.Library.String oldValue) |
Given one of the following valid, case-insensitive values in pOption, update the option to pValue, store the previous value in oldValue More... | |
_.Library.Status | SetXDBCConnectionLimit (_.Library.Integer limit) |
This entrypoint is used define an xDBC Server process connection limit. More... | |
![]() | |
_.Library.String | Help (_.Library.String method) |
This is a helper class that is used by the various SYSTEM classes to provide a Help method. More... | |
|
static |
This entrypoint returns the current default collation name for Library.String datatype in current namespace.
Parameters:
Returns:
current default collation name for Library.String datatype
Examples:
|
static |
This entrypoint is used to determine if an SQL Map definition is selectable by the SQL Query Optimizer or not.
Parameters:
Returns: 1 if the map is selectable, 0 if the map is not selectable. If the table or map does not exist, or there is an invalid input paramater, 0,message will be returned as the map is not selectable or the selectability cannot be determined.
Notes:
return of 1 by this function does not necessarily mean the table and map exist, just that the map's selectability has not been set to 0.
function checks the selectability for the map in the current namespace only. If this table is mapped to multiple namespaces, and the index needs to be built in each namespace, SetMapSelectability should be called in each namespace the index is to be built in. GetMapSelectability should be checked in each namespace the table is mapped to.
Example:
Sample.Person is part of https://github.com/intersystems/Samples-Data. See Downloading Samples.
|
static |
Given one of the following valid, case-insensitive values for pOption, return the current value for that option.
AdaptiveMode - Returns the configuration setting which determines if adaptive mode is applied.
AllowExtrinsicFunctions - Returns if extrinsic functions are allowed to be used in SQL statements through ODBC, JDBC, and Dynamic SQL.
ANSIPrecedence - Returns if ANSI operator precedence is applied.
AutoCommit - Returns the current process's Transaction Commit Mode value. Possible values are:
AutoParallel - Returns the configuration setting which determines if auto hinting PARALLEL is applied. The default is use of auto hinting PARALLEL is applied.
AutoParallelThreshold - Returns the configuration setting which determines the threshold of auto hinting PARALLEL. The default value is 3200. This value could be roughly thought of as how many rows in the visited map
BitmapFriendlyCheck - Returns the current system-wide setting of the BitmapFriendlyCheck flag, a boolean value.
CachedQueryLockTimeout - Returns the configuration setting for lock timeout length, in seconds, used for Cached Queries when a lock needs to be acquired on Cached Query metadata.
CachedQuerySaveSource - Returns the configuration setting for cached queries source code retention. The default is no source is saved. The setting is on a per-system basis.
ClientMaxIdleTime - The maximum time (in seconds) that a client may stay idly connected to the server before the server will close the connection.
CollectionProjection - Returns the configuration setting for collection projection. Possible values are:
CompileMode - Returns the current Compile Mode namespace setting, either Deferred or Immediate.
DDLDefineBitmapExtent - Returns the configuration setting flag which determines if a class created by a DDL CREATE TABLE statement defines a bitmap extent index for the class.
DDLDropTabDelData - Returns the configuration setting flag which determines if a DDL DROP TABLE statement deletes the table's data.
DDLFinal - Returns the configuration setting flag which determines if a class created by a DDL CREATE TABLE statement is Final.
DDLPKeyNotIDKey - Returns the configuration setting for PRIMARY KEY in DDL also being the IDKey index.
DDLUseExtentSet - Returns the configuration setting flag which determines if a class created by a DDL CREATE TABLE statement defines the USEEXTENTSET class parameter to a value of 1.
DDLUseSequence - Returns the configuration setting flag which determines if a class created by a DDL CREATE TABLE statement uses $Sequence for ID assignment.
DefaultTimePrecision - Returns the configuration setting for default precision for the Time component of the value returned by the GETDATE(), CURRENT_TIME, and CURRENT_TIMESTAMP SQL Scalar functions.
DelimitedIdentifiers - Returns the configuration setting which determines if double quote ("") in an SQL statement is used for delimited (quoted) identifiers or string constants.
ECPSync - Returns whether or not SQL SELECT statements perform a $SYSTEM.ECP.Sync() call in the OPEN code.
FastDistinct - Returnss whether or not SQL DISTINCT is optimized to use indexes.
FilerRefIntegrity - Returnss the configuration setting which determines if Foreign Key Referential Integrity checks are performed in the SQL Filer. Turning off SQL Filer Referential Integrity checking will suppress any SQLCODE -121, -122, -123, and -124 errors.
IdentityInsert - Returns the current IDENTITY_INSERT option value. Possible values are:
IsolationMode - Returns current process's Transaction Isolation Mode value. Possible values are:
LockThreshold - Returns the current Lock Threshold setting. The value returned is an integer that is the number of row locks to acquire before escalating to a table lock. This is a system wide setting that is in effect for all processes.
LockTimeout - Return the current system Lock Timeout value as defined in the configuration settings. Note, this may be different than the lock timeout for the current process.
ParameterSampling - Returns the configuration setting which determines if parameter sampling is enabled
ProcessLockTimeout - Returns the Lock Timeout value for the current process.
RetainSQL - Gets the configuration setting which determines if embedded SQL statements are retained as comments in the .INT code version of the routine.
RTPC - Returns the configuration setting flag that determines if Run Time Plan Choice is applied.
SQLFunctionArgConversion - Return the current setting of the system wide flag for controlling if SQL Functions perform ODBCToLogical/DisplayToLogical on SQL Function input arguments.
SQLSecurity - Returns the configuration setting which determines if SQL security is enabled.
SelectMode - Returns the select mode value for the current process. Possible values are:
The select mode returned by this API is used when:
#SQLCompile Select = Runtime
is specified for the compiled SQL code.
When the SQL statement is compiled in Runtime mode, the mode returned by GetSelectMode will be used at runtime to determine whether Logical(0), ODBC(1), or Display(2) mode is used for the statement. See the documentation for #SQLCompile Select for more information.
ServerDisconnectCode - Returns ODBC/JDBC disconnect code. Upon disconnect any ObjectScript code defined in this setting will be executed immediately before the server process Halts. This code will also attempt to be executed anytime the server process encounters an unrecoverable error that causes the server process to Halt.
It will not be executed if the server process encounters a Halt in other user defined code, if the process crashes, if the process is stopped, or InterSystems IRIS is stopped or forced down. If no disconnect code is defined for this namespace, "" is returned. The disconnect code is defined on a per-namespace basis.
ServerInitCode - Returns ODBC/JDBC/SQL Manager initialization code. This Initialization code is executed at login time when connecting to SQL through ODBC, JDBC, or the SQL Manager. If no initialization code is defined for this namespace, "" is returned. Initialization code is defined on a per-namespace basis.
TCPKeepAlive - Returns the TCP Keep Alive interval (in seconds) for xDBC connections.
ToDateDefaultFormat - Returns the default format for the SQL TO_DATE() function.
Example:
|
static |
This entrypoint returns the current setting for xDBC Server process connection limit.
Parameters:
Returns:
Integer value of the current xDBC connection limit setting for this instance
Notes:
value of -1 or "" means no connection limit is currently defined for this instance.
Examples:
|
static |
Sets the DDL Identifier Translation mappings configuration settings.
This is for filtering/modifying valid SQL identifier characters when translating SQL identifiers into Objects identifiers. When converting an SQL identifier to an Objects Identifier at DDL run time, the characters in the 'from' list will be converted to the characters in the 'to' list. This is done through the ObjectScript $Translate function.
For example:
SQL Table name = "My Table!"
from = '"! '
to = ''
Class name = $Translate("My Table!",from,to) = MyTable
Parameter:
Returns:
Status
NOTES: - You must have the "USE" permission on the Admin_Manage Resource in order to change this configuration setting. - Changing this configuration setting will affect all processes immediately. - This is a system-wide setting.
|
static |
This entrypoint is used set the default collation for Library.String datatype.
Parameters:
Output:
Returns:
Status indicating whether the operation was successful
Examples:
|
static |
This entrypoint is used to make an SQL Map definition [not] selectable to the SQL Query Optimizer.
Parameters:
Returns:
Status indicating whether the operation was successful
Notes:
feature is not useful for extent indices (non bitmap). When a non-bitmap extent index is defined, the data map projected to SQL will use both the extent index global and the data map global.
When a non-bitmap extent index is added to a table with existing data, the index must be populated before any queries are run against the table. If not, any queries plans that loop over the data map will return no data.
is no check to see if the table and/or map exists. This is so the selectability of the map can be defined for a table/map that does not yet exist.
feature sets the selectability for the map in the current namespace only. If this table is mapped to multiple namespaces, and the index needs to be built in each namespace, SetMapSelectability should be called in each namespace the index is to be built in.
, this feature sets the selectability for the map in the current table only. If there is a subclass that inherits the index map, and the index is being rebuilt for the entire extent, SetMapSelectability should be called for each table/map in the extent.
Examples:
|
static |
Given one of the following valid, case-insensitive values in pOption, update the option to pValue, store the previous value in oldValue
if applicable, and return a status object reflecting whether the update was successful.
AdaptiveMode - Set the configuration setting which determines if adaptive mode is applied.
Notes
AllowExtrinsicFunctions - determines if extrinsic functions are allowed to be used in SQL statements through ODBC, JDBC, and Dynamic SQL.
Notes
ANSIPrecedence - determines if ANSI operator precedence is applied.
Notes
AutoCommit - Sets the AUTO_COMMIT mode for this process.
Notes
AutoParallel - Sets the configuration setting which determines if auto hinting PARALLEL is applied. The default is use of auto hinting PARALLEL is applied.
Notes
AutoParallelThreshold - Sets the configuration setting which determines the threshold of auto hinting PARALLEL. Once AutoParallel is enabled, use this function to set the threshold for this feature. Increasing the threshold means it would lower the chance for the auto hinting for PARALLEL to happen The default value is 3200. This value could be roughly thought of as how many rows in the visited map
Notes
BitmapFriendlyCheck - determine if the compiler should check if the bitmap index is allowed in a Storage.SQL class.
This setting only applies to classes using Storage.SQL.
Notes
CachedQueryLockTimeout - Defines the lock timeout length, in seconds, used for Cached Queries when a lock needs to be acquired on Cached Query metadata.
Notes
CachedQuerySaveSource - Defines whether or not the source code for cached queries is retained. The default is no source is saved. The setting is on a per-system basis.
Notes
ClientMaxIdleTime - The maximum time (in seconds) that a client may stay idly connected to the server before the server will close the connection.
Notes
CollectionProjection - Sets the collection projection option. Setting takes effect when classes are recompiled.
Notes
CompileModeDeferred - Set the namespace wide flag which turns on Deferred Compilation mode. 'Deferred Compilation Mode' can be used to improve the performance of 'installation-type' activities. Deferred Compilation Mode will, in most cases, reduce the number of class compilations that take place during the loading of tables through DDL scripts. When Deferred Compilation Mode is on, classes are not immediately compiled, but put in a compilation queue which will be compiled at a later time when needed. This is very useful during loading of DDL scripts of the following format:
Notes
CompileModeImmediate - Set the namespace wide flag which turns on Immediate Compilation mode. Immediate Compile Mode is the default compilation mode. If there are pending compilations when switching from Deferred/Install Compile Mode, they will be compiled immediately.
Notes
CompileModeInstall - Set the namespace wide flag which turns on Install Compilation mode. This mode should only be used for installation procedures where no data exists for any of the tables being created. If data exists for the tables definitions being manipulated through DDL statement, use Deferred Compile Mode instead. This is very useful during loading of DDL scripts of the following format:
Notes
CompileModeNocheck - Set the namespace wide flag which turns on Nocheck Compilation mode. This mode is the same as immediate mode except that existing data is not validated against new constraints. For example, if you add a unique constraint to a table that already has data, Nocheck mode will not validate that the constraint is valid. This compile mode must be used with extreme caution. You could end up with data integrity problems in your application. In NOCHECK compile mode, the following constraints are not checked when executing DDL statements:
Otherwise, the mode behaves the same as immediate. There is no deferring of class compilations and indices are built when created.
Notes
DDLDefineBitmapExtent - Sets the flag which determines if a class created by a DDL CREATE TABLE statement defines a bitmap extent index for the class. This setting only applies to classes created through DDL that do not also define an explicit IDKey index.
Notes
DDLDropTabDelData - Sets the flag which determines if a DDL DROP TABLE statement deletes the table's data.
Notes
DDLFinal - Sets the flag which determines if a class created by a DDL CREATE TABLE statement is Final.
Notes
DDLPKeyNotIDKey - Set configuration setting for PRIMARY KEY in DDL also being the IDKey index. This configuration setting determines if a primary key constraint, specified through DDL, also becomes the IDKey index in the class definition. Having the primary key index also be an IDKey index generally gives better performance, but it means the Primary key fields cannot be updated.
Notes
You must have the "USE" permission on the Admin_Manage Resource in order to change this configuration setting. Changing this configuration setting will affect all processes immediately. This is a system-wide setting. DDLUseExtentSet - Sets the flag which determines if a class created by a DDL CREATE TABLE statement defines the USEEXTENTSET class parameter to a value of 1. USEEXTENTSET=1 will generally bind the table to global names that allow for better performance when running queries against the table, especially when the index globals are used. It does mean the global names the class is mapped to are not names that attempt to match the classname. See documentation for USEEXTENTSET parameter for more information.
Notes
DDLUseSequence - Sets the flag which determines if a class created by a DDL CREATE TABLE statement uses $Sequence for ID assignment. The storage keyword IDFUNCTION can be defined as INCREMENT or SEQUENCE. This keyword value is used by the class compiler to determine which system function - $increment or $sequence - is to be used for assigning new ID values for a persistent class using default storage. The default value for IDFUNCTION is INCREMENT, however, the default behavior for classes defined through DDL is to define IDFUNCTION as SEQUENCE.
Notes
DefaultTimePrecision - Set the Default precision for the Time component of the value returned by the GETDATE(), CURRENT_TIME, and CURRENT_TIMESTAMP SQL Scalar functions. Input precision to pValue, the number of decimal places for the millisecond portion of the time value. The default is 0, milliseconds are not returned in the values returned by the GETDATE(), CURRENT_TIME, and CURRENT_TIMESTAMP functions.
Notes
DelimitedIdentifiers - Set the configuration setting which determines if double quote ("") in an SQL statement is used for delimited (quoted) identifiers or string constants.
Notes
ECPSync - Defines whether or not SQL SELECT statements perform a $SYSTEM.ECP.Sync() call in the OPEN code.
Notes
FastDistinct - Defines whether or not SQL DISTINCT is optimized to use indexes. If true (the default) many SQL queries involving DISTINCT (and GROUP BY) will run much more efficiently by making better use of indices (if available). The downside of this is that the values returned by such queries will be collated in the same way they are stored within the index (i.e., results may be in uppercase). Some applications care about the case of values returned by such queries. If "Fast DISTINCT" is set to false (0), the SQL will revert to the use of uncollated values with regards to DISTINCT behavior.
Notes
FilerRefIntegrity - Set the configuration setting which determines if Foreign Key Referential Integrity checks are performed in the SQL Filer. Turning off SQL Filer Referential Integrity checking will suppress any SQLCODE -121, -122, -123, and -124 errors.
Notes
IdentityInsert - Set the IDENTITY_INSERT option for this process. IDENTITY_INSERT controls the ability of the user to specify a value for the IDENTITY property when saving a new object, a value for the IDENTITY column, or an explicit ROWID value in an SQL INSERT. If IDENTITY_INSERT is false and the user specifies an explicit IDENTITY or ROWID value when saving a new object (ObjectScript) or inserting a new ROW (SQL) then an error condition is reported.
Notes
IsolationMode - Set the Transaction Isolation Mode for this process. The ISOLATION MODE options permit you to specify whether or not uncommitted changes to the database should be available for read access by a SELECT query. The READ COMMITTED option states that only those changes that have been committed are available for query access. If requested data has been changed, but the changes have not been committed (or rolled back), the query waits for transaction completion. If a lock timeout occurs while waiting for this data to be available, an SQLCODE error is issued. READ COMMITTED is the default ISOLATION MODE. The READ UNCOMMITTED option states that all changes are immediately available for query access. The READ VERIFIED option states that all changes are immediately available for query access, but with additional checks to skip rows containing changed data that no longer match the conditions specified in the query.
Notes
LockThreshold - Set the Lock Threshold for locks acquired during filing of rows within a single transaction.
Notes
LockTimeout - Set the Lock timeout for locks acquired during the execution of SQL statements.
Notes
ProcessLockTimeout - Set the Lock Timeout for locks made during the execution of SQL statements for this process.
Notes
ParameterSampling - Set the configuration setting which determines if parameter sampling is enabled
pValue = 0, disable parameter sampling. pValue = 1, enable parameter sampling.
Notes
QueryProcedures - Defines whether or not all class queries project as SQL Stored Procedures regardless of the query's SQLProc value.
Notes
RetainSQL - Set the configuration setting which determines if embedded SQL statements are retained as comments in the .INT code version of the routine.
pValue = 0, SQL text will be not retained as comments in the .INT code. pValue = 1, SQL text will be retained as comments in the INT code (Default).
Notes
RTPC - Set the configuration setting which determines if Run Time Plan Choice is applied.
Notes
SQLFunctionArgConversion - Set the system wide flag for controlling if SQL Functions perform ODBCToLogical/DisplayToLogical on SQL Function input arguments.
Notes
SQLSecurity - Set the configuration setting which determines if SQL security is enabled. If SQL security is ON, all SQL security is active. This means privilege-based table/view security is active. A user may only perform actions on a table or view they have been granted privilege for. If SQL security is OFF, SQL security is inactive. This means privilege-based table/view security is suppressed. A user may perform actions on a table or view even if they have not been granted privileges to do so.
Notes
SelectMode - Set the select mode for this process.
The select mode set by this API is used when #SQLCompile Select = Runtime is specified for the compiled SQL code. When the SQL statement is compiled in Runtime mode, the mode specified by SetSelectMode will be used at runtime to determine whether Logical(0), ODBC(1), or Display(2) mode is used for the statement. See the documentation for #SQLCompile Select for more information.
Notes
ServerDisconnectCode - Define ODBC/JDBC disconnect code. Upon disconnect, any ObjectScript code defined in this setting will be executed immediately before the server process Halts. This code will also attempt to be executed anytime the server process encounters an unrecoverable error that causes the server process to Halt. It will not be executed if the server process encounters a Halt in other user defined code, if the process crashes, if the process is stopped, or InterSystems IRIS is stopped or forced down.
Notes
ServerInitCode - Returns ODBC/JDBC/SQL Manager initialization code. This Initialization code is executed at login time when connecting to SQL through ODBC, JDBC, or the SQL Manager.
Notes
TCPKeepAlive - Set the TCP Keep Alive interval for xDBC connections.
Notes
ToDateDefaultFormat - Gets the default format for the SQL TO_DATE() function.
Notes
|
static |
This entrypoint is used define an xDBC Server process connection limit.
Parameters:
An integer value for the number of xDBC connections to allow for this instance.
Returns:
Status indicating whether the operation was successful
Notes:
feature allows a system administrator to limit the number of xDBC connections for this instance. When set to a value greater than -1, the value will determine how many xDBC connections can be made. Setting the value to -1 allows as many collections supported by the license. Connections for users holding the Admin_Operate:"U" resource are never restricted from connection, but they do count against the limit. Users must have the Admin_Operator:"U" resource in order to call this API
Examples: