A data dictionary, as defined in the IBM Dictionary of Computing is a "centralized repository of information about data such as meaning, relationships to other data, origin, usage, and format. "[1] The term may have one of several closely related meanings pertaining to databases and database management systems (DBMS):
Contents |
Database users and application developers can benefit from an authoritative data dictionary document that catalogs the organization, contents, and conventions of one or more databases. A Computer Database is a structured collection of records or data that is stored in a computer system A database management system ( DBMS) is Computer software designed for the purpose of managing Databases DBMSes may use any of a variety of Data models A document (noun is a bounded physical representation of body of Information designed with the capacity (and usually intent to Communicate. Component-based software engineering (CBSE (also known as Component-Based Development (CBD or Software Componentry) is a branch of the Software engineering Middleware is computer Software that connects Software components or applications Application software is a subclass of Computer software that employs the capabilities of a computer directly and thoroughly to a task that the user wishes to perform [2] This typically includes the names and descriptions of various tables and fields in each database, plus additional details, like the type and length of each data element. In Relational databases and Flat file databases a table is a set of data elements (values that is organized using a model of vertical columns (which are In the context of a Relational database table, a column is a set of Data values of a particular simple type, one for each row of the A data type in Programming languages is an attribute of a datum which tells the computer (and the programmer something about the kind of datum it is In Metadata, the term data element is an atomic unit of data that has An identification such as a Data element name A clear Data element definition There is no universal standard as to the level of detail in such a document, but it is primarily a distillation of metadata about database structure, not the data itself. Metadata ( meta data, or sometimes metainformation) is "data about data" of any sort in any media Database design is the process of producing a detailed Data model of a Database. A data dictionary document also may include further information describing how data elements are encoded. One of the advantages of well-designed data dictionary documentation is that it helps to establish consistency throughout a complex database, or across a large collection of federated databases. A federated database system is a type of Meta-[[database management system]] (DBMS which transparently integrates multiple autonomous database systems into a single [3]
Every database management system has integral software for accessing the metadata that describe a database's structure. [4] This collection of metadata and functions, the DBMS data dictionary, is needed to support symbolic query and data manipulation languages, such as SQL. In Computer science, a subroutine ( function, method, procedure, or subprogram) is a portion of code within a larger Query languages are Computer languages used to make queries into Databases and Information systems Broadly query languages can be classified Data Manipulation Language ( DML) is a family of Computer languages used by computer programs or database users to retrieve insert delete and update data in a In addition to using the DBMS data dictionary implicitly to process database requests, each DBMS provides explicit interfaces for passive data dictionary access, enabling programmers to generate data dictionary documentation through automated reports derived from the database. A programmer is someone who writes Computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist Modifications to the database structure, which are reflected as changes in the data dictionary, generally require the actions of a privileged database administrator. A database administrator ( DBA) is a person who is responsible for the environmental aspects of a Database.
The DBMS data dictionary contains information that the DBMS requires to perform its functions and support its particular implementation, which varies considerably from one product to another. [5] The programmable interfaces to data dictionaries of different DBMS products vary, because many aspects of metadata are implementation-dependent, and standards for data dictionary functions are a relatively recent development. For example, MySQL version 5. MySQL is a Relational database management system (RDBMS which has more than 11 million installations 0 added support of features based on the new SQL 2003 Information and Definition Schemas extensions. The SQL/Schemata, or Information and Definition Schemas, extension to the SQL standard is defined by ISO /IEC 9075-112003 [6] On the other hand, Oracle's extensive data dictionary facilities originated long before the SQL 2003 standards were defined. Oracle Database (commonly referred to as Oracle RDBMS or simply Oracle) is a Relational database management system (RDBMS produced and marketed by SQL2003 is the fifth revision of the SQL Database Query language. [7] Items typically found in a DBMS data dictionary include:
In the construction of database applications, it can be useful to introduce an additional layer of data dictionary software, i. A database index is a Data structure that improves the speed of operations on a database table. Referential integrity in a Relational database is consistency between coupled tables The schema (pronounced skee -ma) of a Database system is its structure described in a formal language supported by the Database management system A stored procedure is a Subroutine available to applications accessing a relational database system. A database trigger is Procedural code that is automatically executed in response to certain events on a particular table in a Database. Access control is the ability to permit or deny the use of a particular resource by a particular entity Users in a Computing context refers to one who uses a computer system In computer systems security role-based access control ( RBAC) is an approach to restricting system access to authorized users In Computing, privilege is defined as the delegation of authority over a Computer system Computer data storage, often called storage or memory, refers to Computer components devices and recording media that retain digital e. middleware, which communicates with the underlying DBMS data dictionary. Middleware is computer Software that connects Software components or applications Such a "high-level" data dictionary may offer additional features and a degree of flexibility that goes beyond the limitations of the native "low-level" data dictionary, whose primary purpose is to support the basic functions of the DBMS, not the requirements of a typical application. For example, a high-level data dictionary can provide alternative entity-relationship models tailored to suit different applications that share a common database. An entity-relationship model (ERM is an abstract conceptual representation of structured data [8] Extensions to the data dictionary also can assist in query optimization against distributed databases. Query optimization is a function of many Relational database management systems in which multiple Query plans for satisfying a query are examined and a good Query A distributed database is a Database that is under the control of a central Database management system (DBMS in which storage devices are not all attached [9]
Software frameworks aimed at rapid application development sometimes include high-level data dictionary facilities, which can substantially reduce the amount of programming required to build menus, forms, reports, and other components of a database application, including the database itself. A software framework, in Computer programming, is an abstraction in which common code providing generic functionality can be selectively overridden or specialized by user Rapid application development ( RAD) is a Software development process, which involves iterative development and the construction of Prototypes In Computing and Telecommunications a menu is a list of commands presented to an operator by a Computer or Communications system. In component-based programming ( Visual Basic,.NET WinForms, and Delphi) a form is an easy way to create a GUI window For example, PHPLens includes a PHP class library to automate the creation of tables, indexes, and foreign key constraints portably for multiple databases. PHP is a computer Scripting language. Originally designed for producing Dynamic web pages it has evolved to include a Command line interface capability In Computer science, a library is a collection of Subroutines used to develop Software. In the context of Relational databases a foreign key is a referential constraint between two tables Portability is one of the key concepts of high-level programming. [10] Another PHP-based data dictionary, part of the RADICORE toolkit, automatically generates program objects, scripts, and SQL code for menus and forms with data validation and complex JOINs. In its simplest embodiment an object is an allocated region of storage "Scripting" redirects here For other uses see Script. In Computer science, data validation is the process of ensuring that a program operates on clean correct and useful data A SQL JOIN clause combines records from two tables in a Relational database, resulting in a new temporary table sometimes called a "joined table" [11] For the ASP.NET environment, Base One's data dictionary provides cross-DBMS facilities for automated database creation, data validation, performance enhancement (caching and index utilization), application security, and extended data types. ASPNET is a Web application framework developed and marketed by Microsoft, that Programmers can use to build dynamic Web sites Web applications Base One International Corp (BOIC develops software for constructing database applications and Distributed computing systems In Computer science, a cache (kæʃ like "cash") is a collection of data duplicating original Application security encompasses measures taken throughout the life-cycle to prevent exceptions in the Security policy of an application or the underlying A data type in Programming languages is an attribute of a datum which tells the computer (and the programmer something about the kind of datum it is [12]