Skip to main content

Database management syste


What is a database management system?

Database management systems on z/OS

A database management system (or DBMS) is essentially nothing more than a computerized data-keeping system. Users of the system are given facilities to perform several kinds of operations on such a system for either manipulation of the data in the database or the management of the database structure itself. Database Management Systems (DBMSs) are categorized according to their data structures or types.

There are several types of databases that can be used on a mainframe to exploit z/OS®: inverted list, hierarchic, network, or relational.

Mainframe sites tend to use a hierarchical model when the data structure (not data values) of the data needed for an application is relatively static. For example, a Bill of Material (BOM) database structure always has a high level assembly part number, and several levels of components with subcomponents. The structure usually has a component forecast, cost, and pricing data, and so on. The structure of the data for a BOM application rarely changes, and new data elements (not values) are rarely identified. An application normally starts at the top with the assembly part number, and goes down to the detail components.

Hierarchical and relational database systems have common benefits. RDBMS has the additional, significant advantage over the hierarchical DB of being non-navigational. By navigational, we mean that in a hierarchical database, the application programmer must know the structure of the database. The program must contain specific logic to navigate from the root segment to the desired child segments containing the desired attributes or elements. The program must still access the intervening segments, even though they are not needed.

The remainder of this section discusses the relational database structure.

What structures exist in a relational database?

Relational databases include the following structures:

Database

A database is a logical grouping of data. It contains a set of related table spaces and index spaces. Typically, a database contains all the data that is associated with one application or with a group of related applications. You could have a payroll database or an inventory database, for example.

Table

A table is a logical structure made up of rows and columns. Rows have no fixed order, so if you retrieve data you might need to sort the data. The order of the columns is the order specified when the table was created by the database administrator. At the intersection of every column and row is a specific data item called a value, or, more precisely, an atomic value. A table is named with a high-level qualifier of the owner's user ID followed by the table name, for example TEST.DEPT or PROD.DEPT. There are three types of tables:

A base table that is created and holds persistent data

A temporary table that stores intermediate query results

A results table that is returned when you query tables.

Figure 1. Example of a DB2 table (department table)Example of a DB2 table (department table)

In this table we use:

Columns–The ordered set of columns are DEPTNO, DEPTNAME, MGRNO, and ADMRDEPT. All the data in a given column must be of the same data type.

Rows–Each row contains data for a single department.

Values–At the intersection of a column and row is a value. For example, PLANNING is the value of the DEPTNAME column in the row for department B01.

Indexes

An index is an ordered set of pointers to rows of a table. Unlike the rows of a table that are not in a specific order, an index must always be maintained in order by DB2®. An index is used for two purposes:

For performance, to retrieve data values more quickly

For uniqueness.

By creating an index on an employee's name, you can retrieve data more quickly for that employee than by scanning the entire table. Also, by creating a unique index on an employee number, DB2 will enforce the uniqueness of each value. A unique index is the only way DB2 can enforce uniqueness.

Creating an index automatically creates the index space, the data set that contains the index.

Keys

A key is one or more columns that are identified as such in the creation of a table or index, or in the definition of referential integrity.

Primary key

A table can only have one primary key because it defines the entity. There are two requirements for a primary key:

It must have a value, that is, it cannot be null.

It must be unique, that is, it must have a unique index defined on it.

Unique key

We already know that a primary key must be unique, but it is possible to have more than one unique key in a table. In our EMP table example, the employee number is defined as the primary key and is therefore unique. If we also had a social security value in our table, hopefully that value would be unique. To guarantee this, you could create a unique index on the social security column.

Foreign key

A foreign key is a key that is specified in a referential integrity constraint to make its existence dependent on a primary or unique key (parent key) in another table.

The example given is that of an employee's work department number relating to the primary key defined on the department number in the DEPT table. This constraint is part of the definition of the table. 


Comments

Popular posts from this blog

Here are some interesting facts about artificial intelligence (AI): Origins and Development: The term "artificial intelligence" was coined by John McCarthy in 1956 during the Dartmouth Conference, which is considered the birthplace of AI as a field. AI research has gone through several periods of optimism followed by "AI winters," where progress slowed and interest waned due to unmet expectations. Types of AI : Narrow AI : Designed to perform a narrow task (e.g., facial recognition, internet searches). Most of the AI systems we interact with today are narrow AI. General AI : Hypothetical AI that has the ability to understand, learn, and apply knowledge across a wide range of tasks at a human level. Superintelligent AI : An AI that surpasses human intelligence and capability. This is a theoretical concept and has not yet been achieved. Applications: AI is used in various fields, including healthcare (for diagnostics and treatment recommendations), finance (for fraud ...

Frontend Javascript Libraries for Web development

React.js   React.js (or simply React) is a popular open-source JavaScript library for building user interfaces, particularly for single-page applications where data changes dynamically over time. React was developed by Facebook and is maintained by Facebook and a community of individual developers and companies. Key Features of React Component-Based Architecture: Components : React applications are built using components, which are independent and reusable bits of code that describe a part of the user interface. Components can be class-based or function-based. Props : Short for properties, props are read-only attributes that are passed from parent to child components. State : State is a special object that holds data that may change over the lifecycle of the component. Components can update their own state and re-render when the state changes. JSX (JavaScript XML) : JSX is a syntax extension for JavaScript that looks similar to XML or HTML. It allows developers to write HTML-like c...