Milestones in the History of the Oracle Database (2/3)
In this three-part article, I will try to peek under the lid of one of the most successful IT companies in the world, delve into the background of the creation of its most famous database product, and I will not forget to analyze the individual milestones the company went through and through which it consequently influenced Internet users worldwide.
1983
In 1983, a fundamental “revolution” in portability between different architectures occurred, as the database was completely rewritten from assembly language to C. Version 3, released that year, in addition to expanding to the Unix VAX/VMS platform, also introduced one of the most important functionalities: transactions (COMMIT and ROLLBACK commands).
A transaction is an operation (or group of operations) that meets the following properties [1]:
- A – Atomicity: The transaction is either performed entirely or not at all. This means it doesn’t get left “halfway”.
- C – Consistency: The transaction moves the system from one consistent state to another consistent state.
- I – Isolation: During the execution of a transaction, other transactions do not see its partial results.
- D – Durability: Once a transaction successfully completes, its results are permanent. This transaction cannot be subsequently undone.
1985
With the growing popularity of connecting computers into corporate networks, Oracle built support for the client-server model into version 5. The following year, version 5 was also supplemented with distributed queries. With distributed access, it doesn’t matter where the data is scattered across the network; the system outwardly behaves like a single “repository”.
1988
A very significant milestone was 1988, when version 6 was introduced to the world. It came with PL/SQL (Procedural Language/Structured Query Language), a procedural extension to SQL based on the Ada programming language. [2] This extension later spread to other relational databases, such as Sybase, IBM DB2, and MS SQL Server.
1992
For several more years, however, it was not possible to save a program written in PL/SQL directly into the database or to automatically execute it after a query call. This was only brought by version 7, released in 1992.
In addition to stored procedures and triggers, version 7 also introduced referential integrity, which is a tool that helps maintain relationships in relationally linked database tables.
Referential integrity is defined by a foreign key, either for a pair of tables or on a single table that contains interdependent data. The table in which the rule is specified is called the subordinate table (slave), and the table whose name is specified in the constraint is the superordinate table (master).
Example: When inserting a record into a table containing business addresses, it checks whether the inserted postal code exists in the postal code table (the postal code is the primary key in the postal code table). [3]
1995
The year 1995 brought many changes; one of the historically most important was the first 64-bit database enabling the addressing of a very large memory space.
That year, Larry Ellison also presented his Internet-centric vision. A vision of an inexpensive computer that would act as a terminal and retrieve all information from the Internet. Closely related to the Internet vision is Oracle version 8i (released at the end of 1998) supporting web technologies like HTTP (hypertext transfer protocol) and Java.
2002
Native support for the data exchange and management technology – XML (Extensible Markup Language) – was brought by the subsequent version, Oracle9i.
- 1. Transactions, Pavel Strnad
- 2. PL/SQL, Wikipedia.org
- 3. Referential integrity, Wikipedia.org