%SYSTEM.SQL.Util
abstract class %SYSTEM.SQL.Util extends %SYSTEM.Help
Method Inventory
- CloseAllGateways()
- GetDefaultCollation()
- GetMapSelectability()
- GetOption()
- GetXDBCConnectionLimit()
- SetDDLIdentifierTranslations()
- SetDefaultCollation()
- SetMapSelectability()
- SetOption()
- SetXDBCConnectionLimit()
Methods
Parameters:
- Set coll=$SYSTEM.SQL.Util.GetDefaultCollation() // get current default collation name for %Library.String datatype in current namespace
Returns:
- the current default collation name for %Library.String datatype
Examples:
Parameters:
- pTablename
- Name of the table to check.
pTablename can be qualified or unqualified. If unqualified, the default schema is applied. - pMapname
- Name of the SQL Map in the table to check the selectable for.
Returns: The method returns 1 if the map is selectable. If the map is not selectable, 0 is returned. If the Selectability of the map cannot be determined, a message string will be returned.
Notes:
- A 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.
- There 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.
If the table or map does not exist, 1 or 0 is returned and that will be the selectability of the map once it is created.
- Also, this feature 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:
- Write $SYSTEM.SQL.Util.GetMapSelectability("Sample.Person","NameIdx")
AutoCommit - return the current process's Transaction Commit Mode value. Possible values are:
- 0 = NO AUTO TRANSACTION
- 1 = AUTO COMMIT ON (Default)
- 2 = AUTO COMMIT OFF
- 0 = The class compiler will not perform this check and no error will be returned if the class contains a bitmap index and does not have a positive integer ID type (Default).
- 1 = The class compiler will check to make sure the type of ID of the class is a positive integer if there is a bitmap index defined for the class and the class uses %Storage.SQL.
- 0 = Do not project collections as columns if also projected as child table (Default).
- 1 = Project all collections as columns.
- 0 = IDENTITY cannot be set (Default).
- 1 = IDENTITY can be set.
- 0 = READ UNCOMMITTED (Default).
- 1 = READ COMMITTED
- 3 = READ VERIFIED
- 0 = Logical (Default).
- 1 = ODBC
- 2 = Display
#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.
Example:
- Write $SYSTEM.SQL.Util.GetOption("AutoCommit")
Parameters:
- Set limit=$SYSTEM.SQL.Util.GetXDBCConnectionLimit()
Returns:
- An %Integer value of the current xDBC connection limit setting for this instance
Notes:
- A value of -1 or "" means no connection limit is currently defined for this instance.
Examples:
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:
Parameter:
- from
- A string of characters to translate from
- to
- A string of characters to translate to (by position in the string) Optional. Default is "".
- oldfrom
- Passed By Reference. Contains the previous value of the 'from' setting
- oldto
- Passed By Reference. Contains the previous value of the 'to' setting
- %Status
Parameters:
- newValue
- new default collation name, such as "SQLUPPER"
- systemWide
- 1/0 flag. 1 means set this default collation for %Library.String datatype system wide. 0 means set this default collation for %Library.String datatype for current namespace.
- outValue
- the current (before change to newValue) default collation name for %Library.String datatype
Returns:
- A %Status indicating whether the operation was successful
Examples:
- Set status=$SYSTEM.SQL.Util.SetDefaultCollation("SQLSTRING",1,.oldValue) // set default collation for %Library.String datatype to SQLSTRING systemwide
Parameters:
- pTablename
- Name of the table to check.
pTablename can be qualified or unqualified. If unqualified, the default schema is applied. - pMapname
- Name of the SQL Map(s) in the table to make selectable or not selectable. This can be a comma delimited string list of maps (e.g. "map1" or "map1,map2,map3" or $listtostring($lb("map1","map2"))) or a list of maps (e.g. $lb("map1") or $lb("map1","map2") or $listfromstring("map1,map2,map3")).
- pValue
- 1/0 flag. 1 means make this map Selectable - the SQL Query Optimizer will be able to choose this map. 0 means make this map Not Selectable - the SQL Query Optimizer will NOT be able to consider this map
Returns:
- A %Status indicating whether the operation was successful
Notes:
- This 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.
- There 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.
- This 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.
- Also, 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:
- Write $SYSTEM.SQL.Util.SetMapSelectability("Sample.Person","NameIdx",1) // SQL Query Optimizer WILL consider map NameIdx
- Write $SYSTEM.SQL.Util.SetMapSelectability("Sample.Person","NameIdx",0) // SQL Query Optimizer WILL NOT consider map NameIdx
- Write $SYSTEM.SQL.Util.SetMapSelectability("Sample.Person",$lb("NameIdx","SSNKey"),1) // SQL Query Optimizer WILL consider maps NameIdx or SSNKey
- Write $SYSTEM.SQL.Util.SetMapSelectability("Sample.Person","NameIdx,SSNKey",0) // SQL Query Optimizer WILL NOT consider maps NameIdx or SSNKey
ANSIPrecedence - determines if ANSI operator precedence is applied.
- pValue = 0, do not apply ANSI precedence in SQL statements.
- pValue = 1, apply ANSI precedence in SQL statements (Default).
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.
- pValue = 0, do not allow extrinsic functions in SQL statements through ODBC, JDBC, or Dynamic SQL (Default).
- pValue = 1, allow extrinsic functions in SQL statements through ODBC, JDBC, or Dynamic SQL.
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.
- pValue = 0, No AutoCommit
- pValue = 1, AutoCommit ON (Default).
- pValue = 2, AutoCommit OFF.
Notes
- Changing this configuration setting takes effect immediately and lasts for the duration of the process or until SetOption("AutoCommit") is called again.
- This is a per-process setting.
- pValue = 0, do not apply auto hinting for %PARALLEL in SQL statements
- pValue = 1, apply auto hinting for %PARALLEL in SQL (Default)
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.
- pValue = Auto parallel threshold value (integer). Default is 3200.
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.
This setting only applies to classes using %Storage.SQL.
- pValue = 0, If a %Storage.SQL class is defined with an ID that is not a positive integer, it is up to the developer of the class to make sure the index is data is properly stored and retrieved from the global. An INTEGER type means the class must have either no IDKey index, or a single field IDKey index. If the class has a single field IDKey index, the type of the IDKey property must be of SqlCategory="INTEGER" or SqlCategory="NUMERIC" with a SCALE=0 and MINVAL=1 or higher. (Default)
- pValue = 1, During class compilation the compiler will check to make sure the ID of the table is an INTEGER type if there are any bitmap or bitmap extent indices defined
Notes
- Changing this configuration setting will affect all processes immediately.
- This is a system-wide setting.
- pValue = the number of seconds to use for the lock timeout of Cached Query metadaya. The default is 120 seconds.
Notes
- Changing this configuration setting will affect new processes, not existing processes.
- This is a system-wide setting.
- pValue = 0, Source is deleted after the cached query has compiled (Default)
- pValue = 1, Source is retained for cached query classes. Any new cached queries created by any process will immediately begin saving (or not saving) cached query source. Any existing cached queries will only have source saved if the system was configured to save source at the time the statement was prepared.
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting..
- Changing this configuration setting will take effect immediately for all processes in InterSystems IRIS after this function is called.
- This is a system-wide setting.
- pValue = 0, Do not project collections as a column if the collection is projected as a child table. (Default)
- pValue = 1, Project all collections as columns.
Notes
- Changing this configuration setting will take effect immediately for all future class compilations.
- This is a system-wide setting.
- CREATE TABLE MyTable ...
- CREATE INDEX MyIndex1 ON MyTable ...
- CREATE INDEX MyIndex2 ON MyTable ...
- CREATE INDEX MyIndex3 ON MyTable ...
- CREATE INDEX MyIndex4 ON MyTable ...
- CREATE INDEX MyIndex5 ON MyTable ...
- CREATE TABLE MyOtherTable ...
- CREATE INDEX MyOtherIndex1 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex2 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex3 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex4 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex5 ON MyOtherTable ...
- ALTER TABLE MyOtherTable ADD FOREIGN KEY MyFKey (MyField) REFERENCES MyTable(MyField)
- INSERT INTO MyTable ...
Running with Deferred Compilation Mode off would require 13 class compilations for the sequence above. With Deferred Compilation Mode on, only two class compilations are required. Classes MyTable and MyOtherTable are compiled when the INSERT statement is encountered.
Changing from Deferred to Immediate Compilation Mode will cause any classes in the Deferred Compile Queue to be compiled immediately. If all class compilations were successful, SQLCODE will return 0. If there were any errors, SQLCODE will equal -400. Class compilation errors are logged in the ^mtemp2($namespace,"Deferred Compile Mode","Error"). If SQLCODE=-400 you should view this global structure for more precise error messages.
When in Deferred Compilation Mode, any of the following actions will trigger the classes in the Deferred Compilation Queue to be immediately compiled:
- Switch back to immediate compile mode.
- An xDBC Catalog query is called.
- A DML statement is issued (INSERT, SELECT, GRANT, etc)
- CREATE INDEX statement is executed.
- DROP INDEX statement is executed.
- ALTER TABLE to add a required field to a table with a default value.
- ALTER TABLE to modify a field to be required.
Notes
- Changing this setting will take effect immediately for all processes in this namespace.
- This setting is not related to the macro compiler directive #SQLCompile Mode = { deferred | embedded | immediate }
Notes
- Changing this setting will take effect immediately for all processes in this namespace.
- This setting is not related to the macro compiler directive #SQLCompile Mode = { deferred | embedded | immediate }
- CREATE TABLE MyTable ...
- CREATE INDEX MyIndex1 ON MyTable ...
- CREATE INDEX MyIndex2 ON MyTable ...
- CREATE INDEX MyIndex3 ON MyTable ...
- CREATE INDEX MyIndex4 ON MyTable ...
- CREATE INDEX MyIndex5 ON MyTable ...
- CREATE TABLE MyOtherTable ...
- CREATE INDEX MyOtherIndex1 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex2 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex3 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex4 ON MyOtherTable ...
- CREATE INDEX MyOtherIndex5 ON MyOtherTable ...
- ALTER TABLE MyOtherTable ADD FOREIGN KEY MyFKey (MyField) REFERENCES MyTable(MyField)
- INSERT INTO MyTable ...
Running with Install Compilation Mode off would require 13 class compilations for the sequence above. With Install Compilation Mode on, only one class compilation is required. Classes MyTable and MyOtherTable are compiled when the INSERT statement is encountered. Changing from Install to Immediate Compilation Mode will cause any classes in the Deferred Compile Queue to be compiled immediately. If all class compilations were successful, SQLCODE will return 0. If there were any errors, SQLCODE will equal -400. Class compilation errors are logged in the ^mtemp2($namespace,"Deferred Compile Mode","Error"). If SQLCODE=-400 you should view this global structure for more precise error messages. When in Install Compilation Mode, any of the following actions will trigger the classes in the Deferred Compilation Queue to be immediately compiled:
- Switch back to immediate compile mode.
- An xDBC Catalog query is called.
- A DML statement is issued (INSERT, SELECT, GRANT, etc)
Notes
- Changing this setting will take effect immediately for all processes in this namespace.
- This setting is not related to the macro compiler directive #SQLCompile Mode = { deferred | embedded | immediate }
- If a table is dropped, there are no checks to see if any foreign key constraints in other tables reference this table.
- If a foreign key constraint is added, there are no checks to see if any existing data in the table is valid for the foreign key.
- If a NOT NULL constraint is added to a table with existing data, there is no validation that any existing rows are NOT NULL, nor is there an update existing rows to assign the field's default value if there is one.
- If a UNIQUE or Primary key constraint is deleted, there is no check to see if a foreign key in this or another table had referenced the key.
Notes
- Changing this setting will take effect immediately for all processes in this namespace.
- This setting is not related to the macro compiler directive #SQLCompile Mode = { deferred | embedded | immediate }
- pValue = 0, Automaticallky define a Bitmap Extent index for tables created through DDL (Default)
- pValue = 1, Do not define a Bitmap Extent index for a table created through DDL.
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.
- pValue = 0, DROP TABLE will not delete the table's data when the table is dropped
- pValue = 1, DROP TABLE will delete the table's data when the table is dropped (Default).
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.
- pValue = 0, CREATE TABLE will not define a class as Final
- pValue = 1, CREATE TABLE will define a class as Final (Default)
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.
- Temporary tables are always defined as Final, regardless of this setting.
- pValue = 0, Primary Key constraints will also become IDKey indices
- pValue = 1, Primary Key constraints will NOT become IDKey indices (Default)
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.
- pValue = 0, CREATE TABLE will define the USEEXTENTSET class parameter with a value of 0
- pValue = 1, CREATE TABLE will define the USEEXTENTSET class parameter with a value of 1 (Default)
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.
- pValue = 0, CREATE TABLE uses $Increment for ID assignment
- pValue = 1, CREATE TABLE uses $Sequence for ID assignment (Default)
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.
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.
- pValue = 0, In an SQL statement, "..." is treated as a string literal
- pValue = 1, In an SQL statement, "..." is treated as an identifier (Default)
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.
- pValue = 0, Do not perform ECP Syncs for Select queries (Default)
- pValue = 1, Perform ECP Syncs for Select queries
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = 0, DISTINCT optimization is turned OFF
- pValue = 1, DISTINCT optimization is turned ON (Default)
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = 0, Foreign Key Referential Integrity checks are not performed
- pValue = 1, Foreign Key Referential Integrity checks are performed (Default)
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = 0, Insert/%Save of Identity field/property is not permitted (Default)
- pValue = 1, Insert/%Save of Identity field/property is permitted
Notes
- Changing this configuration setting takes effect immediately and lasts for the duration of the process or until SetIdentityInsert is called again.
- This is a per-process setting.
- pValue = 0, Read uncomitted (Default)
- pValue = 1, Read comitted
- pValue = 3, Read verified
Notes
- Changing this configuration setting takes effect immediately and lasts for the duration of the process or until SetIdentityInsert is called again.
- This is a per-process setting.
- pValue = the number of row locks to acquire before escalating to a table lock. The default is 1000
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = the number of seconds to set the lock timeout to. The default is 10 seconds.
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = the number of seconds to set the lock timeout to. The default is 10 seconds.
Notes
- Changing this configuration setting takes effect immediately and lasts for the duration of the process or until SetIdentityInsert is called again.
- This is a per-process setting.
- pValue = 0, only class queries with SQLProc = TRUE are projected as stored procedures (Default).
- pValue = 1, all class queries are projected as stored procedures.
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = 0, do not apply Run Time Plan Choice in SQL statements (Default).
- pValue = 1, apply Run Time Plan Choice in SQL statements.
Notes AdaptiveMode - Set the configuration setting which determines if adaptive mode is applied.
- pValue = 0, do not apply adaptive mode.
- pValue = 1, apply Adaptive Mode (this covers Run Time Plan Choice, automatic parallelized query execution, automatic tuning of untuned tables, and more. Please see the product documentation for a complete overview; 1 = Default).
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- 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
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = 0, SQL will not convert input arguments for SQL Functions from ODBC/Display to Logical format (Default).
- pValue = 1, SQL will convert input arguments for SQL Functions from ODBC/Display to Logical format if needed.
Notes
- Changing this configuration setting takes effect immediately for all new compilations/prepares of SQL statements.
- Change does not affect already compiled statements or cached dynamic statements compiled with the previous value.
- This is a system-wide setting.
- pValue = 0, SQL security is OFF.
- pValue = 1, SQL security is ON (Default).
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
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.
- pValue = 0, Logical mode.
- pValue = 1, ODBC mode.
- pValue = 2, Display mode.
Notes
- Changing this configuration setting takes effect immediately and lasts for the duration of the process or until SetIdentityInsert is called again.
- This is a per-process setting.
- pValue = a single line of ObjectScript to be executed. Call with pValue="" or undefined to delete disconnect code for this namespace
Notes
- Changing this configuration setting takes effect immediately for all server processes in InterSystems IRIS after this function is called.
- Any existing processes will execute the server disconnect code disconnection.
- The disconnect code is defined on a per-namespace basis.
- pValue = a single line of ObjectScript to be executed when connecting to this namespace. Call with pValue="" or undefined to delete connect code for this namespace
Notes
- Changing this configuration setting takes effect immediately for all new connections.
- The connect code is defined on a per-namespace basis.
- pValue = the number of seconds to set the TCP Keep Alive interval to. The default is 300 seconds (5 minutes).
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
- pValue = a string value with the default format the TO_DATE function will return..
Notes
- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will only take effect for this process and new processes starting in InterSystems IRIS after this function is called. Any existing processes will still use the old setting.
- This is a system-wide setting.
Parameters:
- limit
- An integer value for the number of xDBC connections to allow for this instance.
Returns:
- A %Status indicating whether the operation was successful
Notes:
- This 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.
Examples:
- Set status=$SYSTEM.SQL.Util.SetXDBCConnectionLimit(50) // Allow 50 simultaneous xDBC connections to instance
- Set status=$SYSTEM.SQL.Util.SetXDBCConnectionLimit(-1) // No restrictions for simultaneous xDBC connections to instance