About LongDataTypeMigration
The column data types LONG on Oracle and the equivalent TEXT on Microsoft SQL Server have been deprecated for years. The LongDataTypeMigration library is provided to convert any remaining LONG/TEXT columns in your database to the modern CLOB/VARCHAR (max) data types.
Converting these columns from LONG/TEXT to CLOB/VARCHAR enhances cross-database compatibility and can improve overall database performance. Additionally, should either database vendor fully deprecate and remove support for these legacy data types in the future, Siebel CRM customers will have a supported and sustainable alternative in place.
Using the LongDataTypeMigration Library
The LongDataTypeMigration library lets you remove obsolete column types from the logical definition in the repository and in the physical copy as defined in the database. Examples of this include:
- Executes solely in Development ("DR") environments.
- Migration will migrate the changes downstream
- Leverages DDLIMP, so changes will be applied without a requirement for downtime.
- Executes on customer demand – expected to be a one-time task.
java LongDataTypeMigration.jar /u Username /p Password....
This table shows the full list of the parameters available for the utility:
| Flag | Parameter | Required | Default | Description |
|---|---|---|---|---|
| ⁄u | Table owner Username | Yes | NA | Because this utility changes the schema, it requires the table owner user name and credentials. |
| /p | Table owner Password | Yes | NA | The table owner's password |
| /s | Siebel root | Yes | NA | The root of the Siebel Server installation, such as C:\Siebel\ses\siebsrvr |
| /c | ODBC Data Source | Yes | NA | The ODBC Data Source Name (DSN) to connect to the Siebel DB |
| /t | Table owner | Yes | NA | If Table owner and Table owner's user name don't match, such as in MSSQL where the Table owner might be "dbo", but the Table owner user is "SIEBEL" |
| /l | Log directory | No | <Siebel root>\log | Where the log files should be saved. If not passed, by default,
logs will be created in <Siebel root>\log
directory |
| /d | Database Platform | Yes | NA | ORACLE or MSSQL |
| /a | Apply Alter | Yes | NA | Whether the utility should execute the DDL to modify the LONGs to CLOBs or stop after generating the SQL, allowing the DBA to run it asynchronously |
| /r | Repository Name | No | Siebel Repository | The name of the Siebel Repository to inspect and update. If there are spaces, you must put the name in quotes, such as "Siebel Repository" |
| /~ | Online clause | (Oracle only) | NA | Instructs LongDataTypeMigration to attempt to use "online" conversion. |
| /x | Index tablespace | (Oracle only) | NA | The default index table space |
| /y | Siebel User | NA | NA | Any Siebel user defined in the application--typically, "SADMIN" |
| /z | Siebel password | NA | NA | Password for the Siebel User |
| /b | Tablespace | (Oracle only) | NA | The default data table space |
| /g | SSE_ROLE | Yes | NA | The SSE_ROLE grantee |
| /w | LANG_CD | No | ENU | The Primary language code |
| /UNICODEDB | UNICODEDB | No | Y | Y. Drives Oracle /w and MSSQL /z behavior |
Examples
java -jar LongDataTypeMigration.jar /s $SIEBEL_ROOT\siebsrvr /u
SIEBEL /p ********* /t dbo /c siebelInstall_DSN /d MSSQL /l $SIEBSRVR_ROOT\log /a
Y /r "Siebel Repository" /g SSE_ROLE /w FRA /UNICODEDB Y /y SADMIN /z ******** /g SSE_ROLEjava -jar LongDataTypeMigration.jar /s $SIEBEL_ROOT\siebsrvr /u
SIEBEL /p ******** /t SIEBEL /c siebelInstall_DSN /d ORACLE /l $SIEBEL_ROOT\siebsrvr\log /a Y /r "Siebel Repository" /~ Y /x INDX /y
SADMIN /i ******** /b DATA /g SSE_ROLE /w FRA /UNICODEDB Y