Network database model definition:
Network database model is a database model where database entities are in parent-child relations to each other and exists a databse entity which has no parent and all other database entities are in the child relation (directly or by other database entities) to this database entity.
In the network database model child database entities may have more than one parent (in this model it is allowed to exist many to many relation).
Network database model example:
Network database model resambleas a “tree” structure. It meas that in the network database model exists main database entity which has no parent (a tree root) and all other database entities (tree branches) are in the child relation (directly or by other database entities) with this main database entity.
In the network database model between all database entities (except mian database entity which is a tree root) may establish many to many relation, and, as a resul, have more than one parent. In the hierarchical database model it is not allowed to set between child database entities many to many relations, so each datatabase entity (except of course mian database entity which is a tree root and has no parent) have only one parent. This is the main differance between network and hierarchical database models.
Let’s take a example “Shop database” :
- Branches (this database entity contains data about shop branches in various localizations)
- Sellers (this database entity contains data about sales staff)
- Customers (this database entity contains data about shop customers)
- Products (this database entity contains data about products that the shop offers and sellers responsible for each product)
- Transactions (this database entity contains data about which product has been purchased by customers from Customers database)
In the our example Branches database does not contain foreign keys from other database entities so as a result, has no parent and it is a “tree root”.
Sellers and Cutomers database entities are in one to many relation with Branches database entity (both contain ID_BRANCH values from Branches database entity as foreign keys) so they are directly in the child relation with Branches database entity.
Products database entity is in the one to many relation with Sellers database entity (Products database contains ID_SELLER values from Sellers database (in the Sellers database ID_SELLER is a primary key) as foreign key) so Sellers database is a parent for Products database.
Products database is not directly in the child relation with Branches database but it is in a child relation with this Branches database via Sellers database. For example, if we want to investigate which branch is responsible for selling Microwaves in the first step we must check who from sellers is responsible for this product and next check to which branch this seller has been assigned. In the above example it will be ID_SELLER = S15 – Susan Smith who is assigned to ID_BRANCH = 12352 – New York, USA.
Transactions database contains as foreign keys set of primary keys from Customers and Products databases so Transactions database is in many to many relation with Produts and Customers databases (has 2 prents).
If we want to check who from customers purchased a Food processor we have to find ID_PRODUCT assigned to a Food processor (we see that in Products database it is P5 value) in the Transactions database and also in the Transaction database check to wich ID_CUSTOMER Food processors IDs has been assigned. In the example we can see they are customers with following ID_CUSTOMER values E15 and E12. Next we investigate who from customers in the Customers database have E15 nd E12 IDs. As we they are James Dudley and James Walker.
Copyright © 2015-2016 • All Rights Reserved • database-definition.com