Table of ContentsPreviousNext

Ispirer             Ispirer


Ispirer SQLWays Database Migration Software

[DDL] Subsection

This subsection is used to adjust DDL and SQL script generations.

This option is only available if the target database is Oracle and the GENERATE_DROP_TABLE is set to Yes. The default value is No.

This option can be helpful when the scripts for indexes are re-executed without recreating the table.

Some databases (Oracle, Sybase, Access e.g.) allow not specifying NOT NULL constraints for primary key columns explicitly when creating the table, and they change columns to NOT NULL when adding a primary key. Other databases (IBM DB2, Microsoft SQL Server, MySQL e.g.) require primary key columns to be created with NOT NULL constraints before adding a primary key.

The default value is Yes (all primary key columns will be created with NOT NULL constraints). Possible values - Yes, No.

Identity columns are commonly used in conjunction with primary key constraints to serve as the unique row identifier for the table.

If the unique indexes with the same definition as required for primary keys and unique constraints were created before creating primary keys and unique constraints, the database uses these indexes for primary keys and unique constraints.

When PK_UNIQUE_INDEXES=ALWAYS is specified, the index scripts for primary and unique constraints are always created. This allows creating indexes before creating primary keys and unique constraints.

The source database may allow users to use characters in identifiers (table and column names etc.) that are not allowed in the target database.

For example, users can use @ in identifiers in Microsoft SQL Server, but this character is not allowed in identifiers in Oracle.

If no value is specified in this option and "remove_not_allowed_chars=no", then all not allowed characters are left in identifiers for the target database.

When Yes is specified, all not allowed characters are removed in identifiers in the target database.

The default value is Yes. Possible values - Yes, No.

Characters that are allowed at the first position of identifiers in the source database may not be allowed in the target database.

For example, Microsoft SQL Server identifiers can begin with _ (underscore) while Oracle identifiers cannot.

If no value is specified in this option and "remove_not_allowed_chars_fpos=no", then all not allowed characters are left at the first position of identifiers for the target database.

When Yes is specified, all not allowed characters are removed at the first position of identifiers in the target database.

The default value is Yes. Possible values - Yes, No.

If Yes is specified, SQLWays trims off identifiers exceeding the maximum length for the target database. If during the trimming SQLWays gets identical identifiers, it replaces the last characters of these identifiers (except for the first identifier) with the numbers in the ascending order beginning with "2".

For example, if after trimming SQLWays gets two identical identifiers like "home_phone_numbers" etc., they are further converted to: "home_phone_numbers" and "home_phone_number2".

If No is specified, SQLWays does not trim identifiers exceeding the maximum length for the target database.

The default value is Yes. Possible values - Yes, No.

If Yes is specified and an identifier exceeds the maximum length for the target database, SQLWays first of all deletes all non-alphanumeric characters and then, if the identifier's length is still more than the maximum length, it is trimmed. If No is specified, SQLWays immediately trims the identifiers without deleting the non-alphanumeric characters.

For example, if Yes is specified, SQL Server identifier like "regional_customer_account_number#" (33 characters) is converted to "regionalcustomeraccountnumber" (29 characters).

The default value is Yes. Possible values - Yes, No.

When ANSI_QUOTED_IDENTIFIER is OFF, identifiers cannot be quoted and must follow all Transact-SQL rules for identifiers. Literals can be delimited by either single or double quotation marks.

The default value for ANSI_QUOTED_IDENTIFIER is ON. This option is applicable for MSSQL and Sybase ASE.

To specify DDL options using the SQLWays wizard


Table of ContentsPreviousNext
Ispirer             Ispirer
Copyright © 1999-2015 Ispirer Systems Ltd. Ispirer and SQLWays are trademarks of Ispirer Systems Ltd. All other product names may be trademarks of the respective companies. All rights reserved.