计算机-外文翻译-外文文献-英文文献-数据库系统.doc
外文资料原文 Database Systems1. Introduction to Database SystemToday, more than at any previous time, the success of an organization depends on its ability to acquire accurate and timely data about its operation, to manage this data effectively, and to use it to analyze and guide its activities. Phrases such as the information superhighway have become ubiquitous, and information processing is a rapidly growing multibillion dollar industry .The amount of information available to us is literally exploding, and the value of data as an organizational asset is being widely recognized. This paradox drives the need for increasingly powerful and flexible data management systems . A database is a collection of data , typically describing the activities of one or more related organizations . For example , a university database might contain information about the following . Entities such as students , faculty , courses , and classrooms . Relationships between entities , such as students enrollment in courses , faculty teaching courses , and the use of rooms for courses .A database management system , or DBMS , is software designed to assist in maintaining and utilizing large collections of data , and the need for such systems , as well as their use , is growing rapidly . The alternative to using a DBMS is to use ad hoc approaches that do not carry over from one application to another , for example , to store the data in files and write application-specific code to manage it . The area of database management systems is a microcosm of computer science in general . The issues addressed and the techniques used span a wide spectrum , including languages , object-orientation and other programming paradigms , compilation , operating systems concurrent programming , data structures , algorithms ,theory , parallel and distributed systems , user interfaces , expert systems and artificial intelligence , statistical techniques , and dynamic programming . Database management continues to gain importance as more and more data is brought on-line, and made ever more accessible through computer networking. Today the field is being driven by exciting visions such as multimedia databases, interactive video, digital libraries, a host of scientific projects such as the human genome mapping effort and NASAs Earth Observation System project, and the desire of companies to consolidate their decision-making processes and mine their data repositories for useful information about their business . Commercially , database management systems represent one of the largest and most vigorous market segments . Thus the study of database systems could prove to be richly rewarding in more ways than one .2. Database consistsA database consists of a a set of files. The information in these files may be broken down into records, each of which consists of one or more fields. Fields are the basic units of data storage, and each field typically contains information pertaining to one aspect or attribute of the entity described by the database. Using keywords and various sorting commands, users can rapidly search, rearrange, group, and select the fields in many records to retrieve or create reports on particular aggregates of data.Database records and files must be organized to allow retrieval of the information. Early systems were arranged sequentially (i.e., alphabetically, numerically, or chronologically); the development of direct-access storage devices made possible random access to data via indexes. Queries are the main way users retrieve database information. Typically, the user provides a string of characters, and the computer searches the database for a corresponding sequence and provides the source materials in which those characters appear. A user can request, for example, all records in which the content of the field for a persons last name is the word Smith.In flat databases , records are organized according to a simple list of entities; many simple databases for personal computers are flat in structure. The records in hierarchical databases are organized in a treelike structure, with each level of records branching off into a set of smaller categories. Unlike hierarchical databases, which provide single links between sets of records at different levels, network databases create multiple linkages between sets by placing links, or pointers, to one set of records in another; the speed and versatility of network databases have led to their wide use in business.Relational databases are used where associations among files or records cannot be expressed by links; a simple flat list becomes one table, or “relation, and multiple relations can be mathematically associated to yield desired information. Object-oriented databases store and manipulate more complex data structures, called “objects, which are organized into hierarchical classes that may inherit properties from classes higher in the chain; this database structure is the most flexible and adaptable.3. Structure of the Relational databaseThe relational model is the basis for any relational database management system (RDBMS).A relational model has three core components: a collection of objects or relations, operators that act on the objects or relations, and data integrity methods. In other words, it has a place to store the data, a way to create and retrieve the data, and a way to make sure that the data is logically consistent.A relational database uses relations, or two-dimensional tables, to store the information needed to support a business.3.1.Tables, Row, and ColumnsA table in a relational database, alternatively known as a relation, is a two-dimensional structure used to hold related information. A database consists of one or more related tables.Note: Don't confuse a relation with relationships. A relation is essentially a table, and a relationship is a way to correlate, join, or associate two tables.A row in a table is a collection or instance of one thing, such as one employee or one line item on an invoice. A column contains all the information of a single type, and the piece of data at the intersection of a row and a column, a field, is the smallest piece of information that can be retrieved with the database's query language. For example, a table with information about employees might have a column called LAST_NAME that contains all of the employees' last names. Data is retrieved from a table by filtering on both the row and the column.3.2.Primary Keys, Data types, and Foreign KeysRelation: A two-dimensional structure used to hold related information, also known as a table.Row: A group of one or more data elements in a database table that describes a person, place, or thing.Column: The component of a database table that contains all of the data of the same name and type across all rows.Primary Key: A column (or columns) in a table that makes the row in the table distinguishable from every other row in the same table.Data types: numeric values, character or alphabetic values, and date values.A foreign key enforces the concept of referential integrity in a relational database.Foreign Key: A column (or columns) in a table that draws its values from a primary or unique key column in another table. A foreign key assists in ensuring the data integrity of a table. Referential Integrity A method employed by a relational database system that enforces one-to-many relationships between tables.3.3.Data ModelingIn this process, the developer conceptualizes and documents all the tables for the database. One of the common methods for modeling a database is called ERA, which stands for entities, relationships, and attributes. The database designer uses an application that can maintain entities, their attributes, and their relationships. In general, an entity corresponds to a table in the database, and the attributes of the entity correspond to columns of the table.Data Modeling: A process of defining the entities, attributes, and relationships between the entities in preparation for creating the physical database.The data-modeling process involves defining the entities, defining the relationships between those entities, and then defining the attributes for each of the entities. Once a cycle is complete, it is repeated as many times as necessary to ensure that the designer is capturing what is important enough to go into the database. Let's take a closer look at each step in the data-modeling process.3.4. Defining the EntitiesFirst, the designer identifies all of the entities within the scope of the database application.The entities are the persons, places, or things that are important to the organization and need to be tracked in the database. Entities will most likely translate neatly to database tables.3.5. Defining the Relationships Between EntitiesOnce the entities are defined, the designer can proceed with defining how each of the entities is related. Often, the designer will pair each entity with every other entity and ask, "Is there a relationship between these two entities" Some relationships are obvious; some are not.In the widget company database, there is most likely a relationship between EMP and DEPT, but depending on the business rules, it is unlikely that the DEPT and SALGRADE entities are related. If the business rules were to restrict certain salary grades to certain departments, there would most likely be a new entity that defines the relationship between salary grades and departments. This entity would be known as an associative or intersection table and would contain the valid combinations of salary grades and departments.Associative Table: A database table that stores the valid combinations of rows from two other tables and usually enforces a business rule. An associative table resolves a many-to-many relationship.In general, there are three types of relationships in a relational database:One-to-many the most common type of relationship is one-to-many. This means that for each occurrence in a given entity, the parent entity, there may be one or more occurrences in a second entity, the child entity, to which it is related. For example, in the widget company database, the DEPT entity is a parent entity, and for each department, there could be one or more employees associated with that department. The relationship between DEPT and EMP is one-to-many.One-to-one In a one-to-one relationship, a row in a table is related to only one or none of the rows in a second table. This relationship type is often used for sub typing . For example, an EMPLOYEE table may hold the information common to all employees, while the FULLTIME, PARTTIME, and CONTRACTOR tables hold information unique to full-time employees, part-time employees, and contractors, respectively. These entities would be considered subtypes of an EMPLOYEE and maintain a one-to-one relationship with the EMPLOYEE table. These relationships are not as common as one-to-many relationships, because if one entity has an occurrence for a corresponding row in another entity, in most cases, the attributes from both entities should be in a single entity.Many-to-many in a many-to-many relationship, one row of a table may be related to many rows of another table, and vice versa. Usually, when this relationship is implemented in the database, a third entity is defined as an intersection table to contain the associations between the two entities in the relationship. For example, in a database used for school class enrollment, the STUDENT table has a many-to-many relationship with the CLASS tableone student may take one or more classes, and a given class may have one or more students. The intersection table STUDENT_CLASS would contain the combinations of STUDENT and CLASS to track which students are in which classes.4.DBMS IntroductionThe term database is often to describe a collect: on of related files that is organized into an inte-.7ated structure that provides different people variances to the same data. For example, the department motor vehicles has a data base of all the informal:on driver's licenses in all counties and cities in state. Some of the information in the files (e.g. past criminal record, convictions,and the like) may be made available to police departments, other information (e.g. a balance due on a speeding ticket) maybe made available to licensing bureaus, and still other information (e.g. number and type of convictions)may go to insurance companies A Data Base Management System (DBMS) is an extremely complicated set of software programs that controls the organization, storage and retrieval of data(felids, records and files)in a Database. It also controls the security and integrity of the databasesThe DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data. Tasks that would be time-consuming to accomplish manually are more practical the aid of the computer. In principle, a database in a computer is not different from a database recorded on paper and filed in cabinetsBut the computer does the tedious work of maintaining and accessing a database, and does it fast. A computerized database that can do all this is known as a database management system, or DBMS for short. There are a number of ways to store information in a computer, but not all of these are true database management systems. When a DBMS is used, information systems can be changed much more easily as the organizations information requirements change. New categories of data can be added to the database without disruption to the existing system.4.1. DBMS(Database Management System)DBMS is able to access and retrieve data from nonkey record fields. That is, the DBMS is able to structure and tie together the logically related data from several large files.4.2. Logical Structures Identifying these logical relationships is a job of the data administrator. A data definition language is used for this purpose. The DBMS may then employ one of the following logical structuring techniques during storage access, and retrieval operations:1.List structures. In this logical approach, records are linked together by the use of pointers. A pointer is a data item in one record that identifies the storage location of another logically related record. Records in a customer master file, for example, will contain the name and address of each customer and each record in this identified by an account number. During an accounting period, a customer may buy a number of items on different days. Thus, the company may maintain an invoice reflect these transactions.A list structure could be used in this situation to show the unpaid invoices at any given time. Each record in the customer contain a field that would point to the record location of the first invoice for that customer in the invoice