A central DBMS interface provides user-friendly and structured access to the data contents of a database, or of multiple databases. The DBMS is like a piece of “middleware” allowing application users to get data without understanding the makeup of the database, where data is held, etc.
To work effectively, the DBMS engineering has to work with the data contents, as well as the data vehicle for accessing that data, and the schema or makeup of the database. One way to explain this access methodology is by referencing an application programming interface (API) that ports code from one software environment to another, maintaining compatibility. Experts might label Structured Query Language (SQL), a standard database management syntax, as the API for a DBMS.
A DBMS must also allow for data integration and data abstraction. These tools have to contemplate network security in order to guard the data coming from the database to the end user. The best DBMS systems have auditing tools and other features that promote the tracking and monitoring of data assets.
In some DBMS systems, identity and access management is critical. Part of the control of the DBMS, which is composed according to end user needs, is that it can be configured to only offer an end user the data to which they have access as a particular user status. The rest of the data can be blocked from retrieval for that user.
New DBMS tools can also serve more than one database. For example, a multi-platform DBMS may access Oracle, DB2 and Sybase systems sequentially. With one central system, users have access to a greater amount of data in a more straightforward way.
Other features of DBMS systems are still evolving. One such feature is the ability to handle database schema changes, even significant ones. Although initially, one of the benefits of some DBMS systems is that the end user could be “database agnostic” and not worry about schema changes, some more sophisticated tools put users into a more engaged role, to analyze schema changes and work with them directly. In these tools, users can track, reconcile and report on database schema changes. Some of these tools, because of their additional functionality, are called “database management and development tools.”
Other features of these systems can work proactively with SQL syntax. For example, DBMS tools and features may be geared toward optimizing or debugging SQL, or may be centered toward creating “high-performance SQL code” for use in data work. In some ways, these tools create SQL as the versatile language that it is, going beyond the basics of database access and into the question of how to design SQL queries best.
All of this is important in modern database management systems, not just for the purposes of efficiency, but for the other values of DBMS tools, such as security and versatility.