---
title: Oracle - Artifacts
description: The artifacts of an Oracle generator are SQL*Plus scripts plus PowerShell scripts that deploy and load them.
---

[Skip to content](https://knowledge.bigenius-x.com/oracle-artifacts#main-content)

[Contact us](https://knowledge.bigenius-x.com/kb-tickets/new?hsLang=en) [Go to Customer Portal](https://knowledge.bigenius-x.com/customer-portal?hsLang=en)

[![TRI\_Logo\_biGENIUS\_2020\_RGB\_s](https://knowledge.bigenius-x.com/hs-fs/hubfs/Marketing/TRI_Logo_biGENIUS_2020_RGB_s.png?width=150&height=42&name=TRI_Logo_biGENIUS_2020_RGB_s.png)](https://www.bigenius-x.com/)

Open main navigation

Close main navigation

- [Contact us](https://knowledge.bigenius-x.com/kb-tickets/new)
- [Go to Customer Portal](https://knowledge.bigenius-x.com/customer-portal)

 How can we help you?

- There are no suggestions because the search field is empty.

1. [biGENIUS-X Knowledge Base](https://knowledge.bigenius-x.com/?hsLang=en)
2. [Generators](https://knowledge.bigenius-x.com/generators?hsLang=en)
3. [Artifacts](https://knowledge.bigenius-x.com/generators?hsLang=en#artifacts)

# Oracle - Artifacts

**Applies to**  
Platform: Oracle

The artifacts of an Oracle generator are SQL\*Plus scripts plus PowerShell scripts that deploy and load them. This article explains what each file does and how the files call each other. Use it to find the script that failed and to see which project settings change the artifacts.

All Oracle generator configurations produce the same structure: Stage, Data Store, Data Vault, Data Mart and their combination. Only the layer scripts differ.

### Files in the artifacts folder

- `deploy.ps1`: checks that SQL\*Plus is installed and runs `deploy.sql` with `sqlplus /nolog`. See [Oracle - Deployment](https://knowledge.bigenius-x.com/oracle-deployment?hsLang=en).
- `deploy.sql`: runs `SQL\deploy_all_layers.sql`, then the load-control deployment and configuration when the artifacts contain them. It continues after a failed statement.
- `execute.ps1` and `execute.sql`: with Native Load Control, they run the execution script of the project as the load-control user. Then they print the number of failed or disabled loaders. See [Oracle - Load data - Native Load Control](https://knowledge.bigenius-x.com/oracle-load-data-native-load-control?hsLang=en).
- `replace_placeholders.ps1` and `replacement_config.json`: replace the placeholders of all files. See [Replace the placeholders in the artifacts](https://knowledge.bigenius-x.com/replace-the-placeholders-in-the-artifacts?hsLang=en).
- `README.md`: the generator configuration and version, the project, the branch and the number of generated objects.
- `SQL\`: `deploy_all_layers.sql` and one script per layer, numbered in load order, for example `L010_Stage.sql` and `L020_Raw Vault.sql`.
- `LoadControl\`: the load-control scripts and the Airflow DAG, depending on the project settings below.
- `Helpers\create_development_user.sql`: an example script that creates the database users. See [Oracle - Target environment](https://knowledge.bigenius-x.com/oracle-target-environment?hsLang=en).

### How the deployment scripts connect

`SQL\deploy_all_layers.sql` handles one layer after the other. For each layer it connects as the layer user with `conn` and switches on SQL\*Plus error logging. Then it runs the layer script. Afterwards it prints the number of failed statements, logged in the table `SPERRORLOG` of that user, and the invalid objects from `USER_ERRORS`.

When the project uses model objects imported from a linked project, the script starts with a GRANT block. It connects as the user of each linked layer and grants `SELECT` on the used objects to the consuming layer user. See [Create GRANTs for Imported Objects (Project)](https://knowledge.bigenius-x.com/create-grants-for-imported-objects-project?hsLang=en).

### What a layer script creates

For each model object the layer script creates its tables, views and loader:

- Tables: with the default [Deployment Options](https://knowledge.bigenius-x.com/deployment-options-project?hsLang=en), each table is dropped with `DROP TABLE ... CASCADE CONSTRAINTS PURGE` and created again, empty.
- Views: created with `CREATE OR REPLACE VIEW`.
- Loader: a PL/SQL package `<table name>_LOADER` with the procedure `Run`. It takes the load timestamp and returns the row counts and a message.
- Grants: `GRANT ALL` on the tables and views to the user of the next layer, with `GRANT OPTION`. With Native Load Control, `GRANT EXECUTE` on each loader to the load-control schema.

Here `<table name>` is the generated name of the model object's table, for example `STG_ST_CUSTOMER`.

### Settings that change the artifacts

- [LoadControl Options (Project)](https://knowledge.bigenius-x.com/loadcontrol-options-project?hsLang=en): Native Load Control adds `execute.ps1`, `execute.sql` and `LoadControl\LoadControl_Execution_<project>.sql`. Airflow adds the DAG `LoadControl\<project>_dag.py`.
- [Deploy LoadControl (Project)](https://knowledge.bigenius-x.com/deploy-loadcontrol-project?hsLang=en): true adds `deploy_loadcontrol.sql` and `L000_Loadcontrol_Deployment.sql`, which recreate the load-control tables and procedures.
- [Configure LoadControl (Project)](https://knowledge.bigenius-x.com/configure-loadcontrol-project?hsLang=en): true adds `configure_loadcontrol.sql` and one `L0x0_<layer>_Configuration.sql` per layer, which register the load objects.
- [Deployment Options (Project)](https://knowledge.bigenius-x.com/deployment-options-project?hsLang=en): decides whether existing tables are dropped.
- [Database Links for Source Systems (Project)](https://knowledge.bigenius-x.com/database-links-for-source-systems-project?hsLang=en): decides whether the Stage script creates database links.

`<project>` stands for the project name. In the DAG file name it is written in lower case with underscores, for example `test_datavault_oracle_dag.py`.

### Example

The Data Vault project `test.datavault.oracle` with Native Load Control, Airflow and the default settings produces these files:

```
deploy.ps1
deploy.sql
execute.ps1
execute.sql
README.md
replace_placeholders.ps1
replacement_config.json
Helpers\create_development_user.sql
LoadControl\configure_loadcontrol.sql
LoadControl\deploy_loadcontrol.sql
LoadControl\L000_Loadcontrol_Deployment.sql
LoadControl\L010_Stage_Configuration.sql
LoadControl\L020_Raw Vault_Configuration.sql
LoadControl\L030_Business Vault_Configuration.sql
LoadControl\LoadControl_Execution_test.datavault.oracle.sql
LoadControl\test_datavault_oracle_dag.py
SQL\deploy_all_layers.sql
SQL\L010_Stage.sql
SQL\L020_Raw Vault.sql
SQL\L030_Business Vault.sql
```

A Data Mart project with Deploy LoadControl false has no `deploy_loadcontrol.sql` and no `L000_Loadcontrol_Deployment.sql`. It uses the load control that another project deployed.

### Release differences

- Generator 2.2: `Helpers\create_development_user.sql` is added.
- Generator 2.2: the Airflow DAG calls the loaders through the Python driver `oracledb`. Up to Generator 2.0.1 it imported the Microsoft SQL Server provider.

### Related articles

- Previous: [Generate artifacts](https://knowledge.bigenius-x.com/generate-artifacts?hsLang=en), [Download generated artifacts](https://knowledge.bigenius-x.com/download-generated-artifacts?hsLang=en)
- Next: [Replace the placeholders in the artifacts](https://knowledge.bigenius-x.com/replace-the-placeholders-in-the-artifacts?hsLang=en)
- Reference: [Oracle - Placeholder values](https://knowledge.bigenius-x.com/oracle-placeholder-values?hsLang=en), [LoadControl Options (Project)](https://knowledge.bigenius-x.com/loadcontrol-options-project?hsLang=en), [Deploy LoadControl (Project)](https://knowledge.bigenius-x.com/deploy-loadcontrol-project?hsLang=en), [Configure LoadControl (Project)](https://knowledge.bigenius-x.com/configure-loadcontrol-project?hsLang=en)
- See also: [Oracle - Deployment](https://knowledge.bigenius-x.com/oracle-deployment?hsLang=en), [Understand Load Control](https://knowledge.bigenius-x.com/understand-load-control?hsLang=en), [Generators Release - 2.2.0](https://knowledge.bigenius-x.com/generators-release-2.2.0?hsLang=en)

- [Getting started](https://knowledge.bigenius-x.com/getting-started?hsLang=en#main-content)

    - [Guidelines](https://knowledge.bigenius-x.com/getting-started?hsLang=en#guidelines)
    - [Start working](https://knowledge.bigenius-x.com/getting-started?hsLang=en#start-working)
    - [Account](https://knowledge.bigenius-x.com/getting-started?hsLang=en#account)
- [General overview](https://knowledge.bigenius-x.com/general-overview?hsLang=en)
- [Artificial Intelligence](https://knowledge.bigenius-x.com/artificial-intelligence?hsLang=en)
- [Application Modules](https://knowledge.bigenius-x.com/application-modules?hsLang=en#main-content)

    - [Administration](https://knowledge.bigenius-x.com/application-modules?hsLang=en#administration)
    - [Solutions](https://knowledge.bigenius-x.com/application-modules?hsLang=en#solutions)
    - [Global Features](https://knowledge.bigenius-x.com/application-modules?hsLang=en#global-features)
    - [Projects](https://knowledge.bigenius-x.com/application-modules?hsLang=en#projects)
    - [Branches](https://knowledge.bigenius-x.com/application-modules?hsLang=en#branches)
    - [Data Connections](https://knowledge.bigenius-x.com/application-modules?hsLang=en#data-connections)
    - [Dataflow Modeling - Overview](https://knowledge.bigenius-x.com/application-modules?hsLang=en#dataflow-modeling-overview)
    - [Dataflow Modeling - Wizard Steps](https://knowledge.bigenius-x.com/application-modules?hsLang=en#dataflow-modeling-wizard-steps)
    - [Dataflow Modeling - Terms](https://knowledge.bigenius-x.com/application-modules?hsLang=en#dataflow-modeling-terms)
    - [Dataflow Modeling - Term Mapping](https://knowledge.bigenius-x.com/application-modules?hsLang=en#dataflow-modeling-term-mapping)
    - [Dataflow Modeling - Relationships](https://knowledge.bigenius-x.com/application-modules?hsLang=en#dataflow-modeling-relationships)
    - [Dataflow Modeling - Data Quality](https://knowledge.bigenius-x.com/application-modules?hsLang=en#dataflow-modeling-data-quality)
    - [Dataflow Modeling - Indexes](https://knowledge.bigenius-x.com/application-modules?hsLang=en#dataflow-modeling-indexes)
    - [Relationship Modeling](https://knowledge.bigenius-x.com/application-modules?hsLang=en#relationship-modeling)
    - [Generate Artifacts](https://knowledge.bigenius-x.com/application-modules?hsLang=en#generate-artifacts)
    - [Project Settings](https://knowledge.bigenius-x.com/application-modules?hsLang=en#project-settings)
    - [Data Marketplace](https://knowledge.bigenius-x.com/application-modules?hsLang=en#data-marketplace)
- [Generators](https://knowledge.bigenius-x.com/generators?hsLang=en#main-content)

    - [Fabric Warehouse](https://knowledge.bigenius-x.com/generators?hsLang=en#fabric-warehouse)
    - [Fabric Lakehouse](https://knowledge.bigenius-x.com/generators?hsLang=en#fabric-lakehouse)
    - [Databricks](https://knowledge.bigenius-x.com/generators?hsLang=en#databricks)
    - [Snowflake](https://knowledge.bigenius-x.com/generators?hsLang=en#snowflake)
    - [Microsoft SQL Server](https://knowledge.bigenius-x.com/generators?hsLang=en#microsoft-sql-server)
    - [Artifacts](https://knowledge.bigenius-x.com/generators?hsLang=en#artifacts)
    - [Replace Placeholders](https://knowledge.bigenius-x.com/generators?hsLang=en#replace-placeholders)
    - [Target solution environment](https://knowledge.bigenius-x.com/generators?hsLang=en#target-solution-environment)
    - [Deployment](https://knowledge.bigenius-x.com/generators?hsLang=en#deployment)
    - [Deployment with an Azuze DevOps pipeline](https://knowledge.bigenius-x.com/generators?hsLang=en#deployment-with-an-azuze-devops-pipeline)
    - [Delta Deployment](https://knowledge.bigenius-x.com/generators?hsLang=en#delta-deployment)
    - [Load control environment](https://knowledge.bigenius-x.com/generators?hsLang=en#load-control-environment)
    - [Load data with a native load control](https://knowledge.bigenius-x.com/generators?hsLang=en#load-data-with-a-native-load-control)
    - [Load data with Apache Airflow](https://knowledge.bigenius-x.com/generators?hsLang=en#load-data-with-apache-airflow)
    - [Model Object Type](https://knowledge.bigenius-x.com/generators?hsLang=en#model-object-type)
    - [Properties](https://knowledge.bigenius-x.com/generators?hsLang=en#properties)
    - [Default Terms](https://knowledge.bigenius-x.com/generators?hsLang=en#default-terms)
- [Discovery application](https://knowledge.bigenius-x.com/discovery-application?hsLang=en#main-content)

    - [Discovery configurations](https://knowledge.bigenius-x.com/discovery-application?hsLang=en#discovery-configurations)
- [Best practices](https://knowledge.bigenius-x.com/best-practices?hsLang=en#main-content)

    - [Modeling Approaches](https://knowledge.bigenius-x.com/best-practices?hsLang=en#modeling-approaches)
    - [Use Cases](https://knowledge.bigenius-x.com/best-practices?hsLang=en#use-cases)
    - [Business Rules](https://knowledge.bigenius-x.com/best-practices?hsLang=en#business-rules)
    - [Data Quality Rules](https://knowledge.bigenius-x.com/best-practices?hsLang=en#data-quality-rules)
- [FAQs](https://knowledge.bigenius-x.com/faqs?hsLang=en)
- [Product Release Notes](https://knowledge.bigenius-x.com/product-release-notes?hsLang=en#main-content)

    - [SaaS Application](https://knowledge.bigenius-x.com/product-release-notes?hsLang=en#saas-application)
    - [Discovery application](https://knowledge.bigenius-x.com/product-release-notes?hsLang=en#discovery-application)
    - [Generators](https://knowledge.bigenius-x.com/product-release-notes?hsLang=en#generators)
- [Legal Documents](https://knowledge.bigenius-x.com/legal-documents?hsLang=en#main-content)

    - [Current legal docs](https://knowledge.bigenius-x.com/legal-documents?hsLang=en#current-legal-docs)
    - [Software Product and Limits](https://knowledge.bigenius-x.com/legal-documents?hsLang=en#software-product-and-limits)

- [Contact us](https://knowledge.bigenius-x.com/kb-tickets/new?hsLang=en)
- [Customer Portal](https://knowledge.bigenius-x.com/customer-portal)
- [Sign in](https://knowledge.bigenius-x.com/_hcms/mem/login)

[![biGENIUS logo](https://knowledge.bigenius-x.com/hubfs/TRI_Logo_biGENIUS_2020_RGB-1.svg "biGENIUS logo")](https://www.bigenius-x.com)

<https://www.linkedin.com/company/bigenius> <https://www.youtube.com/@biGENIUS_DWA>

All rights reserved © 2025, biGENIUS AG