Andrea Rodr´ ıguez Summer School - Castell´n 2004 o
Department of Computer Science University of Concepci´n, Chile o http://www.inf.udec.cl/∼andrea email@example.com
Information and data are diﬀerent. Information is understood by a person. Data are values stored on a passive medium like a computer disk. The purpose of a database management system (DBMS) is to bridge the gap between information and data - the data stored in memory or on disk must be converted to usable information. The basic processes that are supported by a DBMS are: • Speciﬁcation of data types, structures and constraints to be considered in an application. • Storing the data itself into persistent storage. • Manipulation of the database. • Querying the database to retrieve desired data • Updating the content of the database A database is a model of a real world system. The contents (sometimes called the extension) of a database represent the state of what is being modeled. Changes in the database represent events occurring in the environment that change the state of what is being modeled. It is appropriate to structure a database to mirror what it is intended to model. Databases can be analyzed at diﬀerent levels: • Conceptual Modeling • Logical Modeling • Physical Modeling
Conceptual-level concepts permit us to model the application world in terms that are independent of any particular data (logical) model. Conceptual models provide a framework for developing a
database schema from the top to the bottom in the process of a database design. This Section examines the entity-relationship model and the object-oriented model as representatives of conceptual modeling. The entity-relationship model is widely used and the object-oriented model is gaining more acceptance for non-traditional databases.
The Entity-Relationship Model
The entity-relationship model is a tool for analyzing the semantic features of an application that are independent of events. This approach includes a graphical notation, which depicts entity classes as rectangles, relationships as diamonds, and attributes as circles or ovals. For complex situation, a partial entity-relationship diagram may be used to present a summary of the entities and relationships that do not include the details of the attributes. The entity-relationship diagram provides a convenient method for visualizing the interrelationships among entities in a given application. This tool has proven to be useful in making the transition from an information application description to a formal database schema. The entityrelationship model is used for describing the conceptual schema of an enterprise without attention to the eﬃciency of the physical database design. The entity-relationship diagrams are then turned into a logical schema in which the database is actually implemented. Short deﬁnitions of some of the basic terms that are used for describing important entityrelationship concepts are: 1. Entity. An entity is a thing that exists and is distinguishable. (a) Entity instance. An instance is a particular occurrence of an entity. For example, each person is an instance of an entity Person, each car is an instance of an entity Car, etc. (b) Entity class. A group of similar entities is called an entity class or entity type. An entity class has common attributes. In this review, I will not make distinction between entity and entity class. In other readings you may ﬁnd that what I call entity is called entity class and what I call entity instance is just called entity. 2. Attributes. Attributes describe properties of entities and relationships. (a) Simple and composite attributes. A simple attribute is the smallest semantic unit of data, which are atomic (no internal structure). A composite attribute can be subdivided into parts, e.g., address (street, city, state, zip). (b) Single and multivalued attributes....