USoft for SOLID

Previous Next

USoft Developer for SOLID Server uses the Call Level Interface based on Microsoft's ODBC specification and the X/Open Call Level Interface specification. For more information, see the SOLID Server Programmer's Guide and Reference.

Solid Flow Engine

Solid Flow Engine versions up to 4.5.0143 are supported by USoft.

Unsupported Data Types

DATE, TIME, TIMESTAMP, and DATETIME are converted to DATE.

Solid does not support the rounding of date values.

Date Functions

Universal date_to_char and char_to_date functions are available for Solid. The syntax is:

SELECT date_to_char(<expression>) FROM <table>

SELECT char_to_date(<expression>) FROM <table>

 

CAST Expression

The CAST expression can be used to convert between data types.

For example, to compute the sum of numbers stored in a column of the data type CHAR:

SELECT SUM(CAST(EMPNO AS INTEGER))FROM EMPLOYEE

or for example, suppose you want to know today's date (without a time fraction):

SELECT CAST(SYSDATE AS DATE)

In some cases, the SOLID database requires that character type parameters in a select list are CAST-ed. USoft provides casting of character based fields in its generated SQL statements. The resource that activates this feature is:

*SolLogin.castCharParameters : True

The resource is set to False by default.

Sequences

When creating a sequence object, the Rules Engine checks whether this sequence object already exists. If it exists, the Rules Engine does NOT drop and recreate the sequence object.

Locking

When connected to a SOLID RDBMS, USoft uses the READ COMMITTED isolation level to improve concurrency. When set to a higher level (REPEATABLE READ), one user would lock all retrieved records until commit, even if no data manipulations were started. Other users will not be able to query these records, which can cause locking problems.

Optimization Hints

The Oracle style optimizer hint can be used for ODBC databases such as Solid. The optimizer hint comment begins with /*+ and ends with */. USoft converts this comment so that it begins with -- and ends with a new line. If you have a new line in the original comment, a -- is inserted at the beginning of each line.

For example, if you write a comment /*+abc*/, it is converted by USoft for Solid to –abc\n. So, to send the following comment to the database:

--(* vendor(SOLID),product(Engine),option(hint)

-–INDEX TAB1.INDEX1

–-INDEX TAB1.INDEX1 FULL SCAN TAB2 *)--

 

you can write the following comment:

/*+(* vendor(SOLID),product(Engine),option(hint)

INDEX TAB1.INDEX1

INDEX TAB1.INDEX1 FULL SCAN TAB2 *)--*/

 

CLOB Columns

If a column has been defined as a CLOB column, you can store large strings in that column. Searching on such a column however is limited in Solid: you can only add search conditions if the column contains small values.