The documentation from version 39.5.17 of PLANTA project can be found in the new PLANTA Online Help.

Schema Export New from DB 39.5.0

Information

  • You have the option to export the current database definition in the Oracle or MSSQL format.
Requirements
  • The directory into which you want to export must be defined for the export_path_databasescheme global setting under Customizer Master Data Global Settings in the Template code data field.
    • In Windows systems, no single \ is used, but two \\.
      • C:\\planta\\export\\schema.
Procedure
  • Select _Customizer Databases Database Schema Export in order to initiate a schema export.
    • The export can take between 30 seconds and 1 minute.
  • Afterwards, the exported schema is located in the specified directory under \SQLServer_<Export time stamp>\SQLServer_create.sql or \Oracle10g_<Export time stamp>\Oracle10g_create.
  • The drop scripts contain information on the deletion of the current schema.
  • The hibernate_mapping subdirectories contain data table definitions for Java.
  • In order to transfer the exported schema to a new database, theoretically the content of _create.sql can simply be opened, in SqlPlus or SqlDeveloper, for example.
    • We highly recommend that you do this in a regular installation process.
      • Here, you can simply rename the exported _create.sql script into 00_tables in an existing installer and copy it to \db\bin\sql\oracle\10_tables or \db\bin\sql\ms-sql\10_tables\ and possibly replace the already existing file.

Notes

  • For the database, only the database definition (the schema) is exported, not the database content (real data).
  • A schema is always created in both Oracle and MSSQL format, regardless of the format of the actually used database.
    • It is therefore not necessary to open the schema export twice (e.g. with an Oracle and an MSSQL database).
Detailed structure of the script content
  • In a create-script, all data tables including their columns are defined first.
  • The following data tables are exported:
    • All activated PLANTA data tables, i.e., all data tables for the schema of which the Activated checkbox is activated and the Activated checkbox for the data table itself is activated.
    • For each data table of the Q1B and Q2B schemas there is also a data table of the same name with the suffix HIS and identical columns that need Hibernate Envers in order to save history files. See also Historization.
    • Furthermore the internal REVINFO table of Envers.
  • Definition of the data table columns.
    • All columns that have been set to Active, are written.
    • From version S 39.5.0, each data table (except REVINFO) has a UUID column containing a unique ID for each record.
    • The primary keys stand before the UUID field and are defined at the end of the data table.
    • Default values and NOT NULL constraints:
      • All columns of the primary key imply a NOT NULL constraint.
      • All numeric fields (integer, short, double) have a NOT NULL constraint and 0 as a default value.
      • All date fields have a NOT NULL constraint and 01.01.1970 as default value (in both Oracle or MSSQL notation).
      • The UUID fields create a new, unique UUID value as default value (in both Oracle and MSSQL notation) and have a NOT NULL constraint as well.
      • Numeric fields that form part of a foreign key in the referenced data table of which NULL permitted is activated, are an exception. Such columns neither have a default value nor a NOT NULL constraint.
  • Then the definitions of the indices and constraints of all data tables follow.
    • There are different types of indices and constraints:
      • I-text indices for all data tables the records of which contain an I-text. This index type has no constraint.
      • Foreign key indices for each data table that defines a link to another data table. Furthermore, this index type defines a constraint (or, in MSSQL, a trigger for update and delete function).
      • Envers also creates constraints for its history tables that refer to the general REVINFO Envers table. Envers does not create indices for this.
  • Finally, the script contains a new database sequence (for Oracle databases), which is required by Envers.

         PLANTA project









 
  • Suche in Topic-Namen

  • Suche in Topic-Inhalten
This site is powered by the TWiki collaboration platform Powered by Perl