A database is a structured store of data. It is typically managed as a shared data source that is used by multiple applications and/or processes.
The Database entity represents the database store. It inherits from DataStore to indicate that the physical data is stored under this asset.
Often the data within the database is organized into distinct collections of data for use by the different applications or processes. The structure of the data in each collection is called a database schema. Such database schemas are used to limit the scope of data that a consuming application/process is exposed to. Where this is the case, each database schema is represented by the DeployedDatabaseSchema entity. DeployedDatabaseSchema inherits from DataSet to indicate that it is a logical collection of data. The physical data is stored in the database.
DeployedDatabaseSchema is linked to its Database using the DataContentForDataSet relationship.
Defining the structure of data within a database
The structure of the data stored in a database is represented by a subclass of RootSchemaType. For example, if the database has a relational database structure (ie tables and columns) the root schema type used is RelationalDBSchemaType.
If the database is divided into database schemas, the structure for each database schema is described by the RootSchemaType which is connected to its DeployedDatabaseSchema entity using the AssetSchemaType relationship.
If the database has no database schemas, the structure of the whole database is described using the RootSchemaType which is connected to its Database entity using the AssetSchemaType relationship.