Dbms models


Published on

Published in: Technology
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Database Management Systems
  • Database Management Systems
  • Database Management Systems
  • Database Management Systems
  • Database Management Systems
  • Database Management Systems
  • Database Management Systems
  • 2
  • Dbms models

    1. 1. Intro to DBMS and its Models Name Roll Nos . Babli Kumari 02 D Gokul 11 Shraddha Labde 23 Ravikant Sharma 46 Prabhat Sinha 48
    2. 2. <ul><li>Data : Known facts that can be recorded and have an implicit meaning. </li></ul><ul><li>Database : A collection of related data </li></ul><ul><li>Mini-world : Some part of the real world about which data is stored in a database. For example, student grades and transcripts at a university. </li></ul><ul><li>Database Management System (DBMS) : A software package/ system to facilitate the creation and maintenance of a computerized database. </li></ul><ul><li>Database System : The DBMS software together with the data itself. Sometimes, the applications are also included. </li></ul>Basic Definitions
    3. 3. DBMS <ul><li>A DBMS consists of a group of programs that manipulate the database and provide an interface between the database , the user of the database and other application programs. </li></ul>
    4. 4. History of DBMS <ul><li>1960 – First DBMS designed by Charles Bachman at GE. Integrated Data source(IBS). </li></ul><ul><li>1970 – Codd introduced IMS. IBMs Information Management System (IMS) </li></ul><ul><li>1980 – Relational model became popular and accepted as the main database paradigm. SQL, ANSI SQL, etc. </li></ul><ul><li>1980 to 1990 – New data models, powerful query languages, etc. Popular vendors are Oracle, SQL Server, IBMs DB2, Informix, etc. </li></ul>
    5. 5. File System vs. DBMS <ul><li>A company has 500 GB of data on employees, departments, products, sales, & so on.. </li></ul><ul><li>Data is accessed concurrently by several employees </li></ul><ul><li>Queries about the data must be answered quickly </li></ul><ul><li>Changes made to the data by different users must be applied consistently </li></ul><ul><li>Access to certain parts of the data be restricted </li></ul>
    6. 6. File System vs. DBMS <ul><li>Data stored in operating system files </li></ul><ul><li>Many drawbacks!!! </li></ul><ul><ul><li>500 GB of main memory not available to hold all data. Data must be stored on secondary storage devices </li></ul></ul><ul><ul><li>Even if 500GB of main memory is available, with 32-bit addressing, we cannot refer directly to more than 4GB of data </li></ul></ul><ul><ul><li>Data redundancy and inconsistency </li></ul></ul><ul><ul><ul><li>Multiple file formats, duplication of information in different files </li></ul></ul></ul><ul><ul><li>Special program to answer each query user may ask </li></ul></ul>
    7. 7. File System vs. DBMS <ul><li>Many drawbacks!!! </li></ul><ul><ul><li>Integrity problems </li></ul></ul><ul><ul><ul><li>Integrity constraints (e.g. account balance > 0) become “buried” in program code rather than being stated explicitly </li></ul></ul></ul><ul><ul><ul><li>Hard to add new constraints or change existing ones </li></ul></ul></ul><ul><ul><li>We must protect the data from inconsistent changes made by different users. If application programs need to address concurrency, their complexity increases manifolds </li></ul></ul><ul><ul><li>Consistent state of data must be restored if the system crashes while changes are being made </li></ul></ul><ul><ul><li>OS provide only a password mechanism for security. Not flexible enough if users have permission to access subsets of data </li></ul></ul>
    8. 8. <ul><li>Define a database : In terms of data types, structures and constraints </li></ul><ul><li>Construct or Load the Database on a secondary storage medium </li></ul><ul><li>Manipulating the database : Querying, generating reports, insertions, deletions and modifications to its content </li></ul><ul><li>Concurrent Processing and Sharing by a set of users and programs – Yet, keeping all data valid and consistent </li></ul><ul><li>Crash Recovery </li></ul><ul><li>Data Security and Integrity </li></ul><ul><li>Data Dictionary </li></ul><ul><li>Performance </li></ul>DBMS Functionalities
    9. 9. DBMS Architecture Plan Executor Optimizer Operator Evaluator Parser SQL Engine Recovery Manager Lock Manager Tx Manager Files & Access Buffer Manager Disk Space Manager DBMS Catalog Data File Database Web Forms Front-End SQL I/f SQL Commands
    10. 10. People Who Work with Databases <ul><ul><li>Database Implementers/ Designers </li></ul></ul><ul><ul><li>DBA </li></ul></ul><ul><ul><li>Application Programmers </li></ul></ul><ul><ul><li>End Users </li></ul></ul>
    11. 11. End Users <ul><li>Casual users </li></ul><ul><li>These are people who use the database occasionally. </li></ul><ul><li>Naive users </li></ul><ul><li>These are users who constantly querying and updating the database. </li></ul><ul><li>Eg. Reservation Clerks of Airline, Railway, Hotel, etc. </li></ul><ul><li>Clerks at receiving station of Courier service, Insurance agencies, etc. </li></ul><ul><li>Sophisticated Users </li></ul><ul><li>People who use for their complex requirements. </li></ul><ul><li>Eg. Engineers, Scientists, Business analysts… </li></ul><ul><li>Standalone Users </li></ul><ul><li>Who maintain database for personal use. </li></ul>
    12. 12. DBA <ul><li>Managing resources </li></ul><ul><li>Creation of user accounts </li></ul><ul><li>Providing security and authorization </li></ul><ul><li>Managing poor system response time </li></ul><ul><li>System Recovery </li></ul><ul><li>Tuning the Database </li></ul>
    13. 13. Database Languages <ul><li>DDL – Data Definition Language </li></ul><ul><li>SDL – Storage Definition Language </li></ul><ul><li>VDL – View Definition Language </li></ul><ul><li>DML – Data Manipulation Language </li></ul><ul><li>(For data manipulations like insertion, deletion, update, retrieval, etc.) </li></ul>
    14. 14. <ul><li>Various types of data: Images, Text, complex queries, Data Mining, etc. </li></ul><ul><li>Enterprise Resource Planning (ERP) </li></ul><ul><li>Management Resource Planning (MRP) </li></ul><ul><li>Database in Web technologies </li></ul><ul><li>Banking: all transactions </li></ul><ul><li>Airlines: reservations, schedules </li></ul><ul><li>Universities: registration, grades </li></ul><ul><li>Current Database trends: </li></ul><ul><li>Multimedia databases </li></ul><ul><li>Interactive video </li></ul><ul><li>Streaming data </li></ul><ul><li>Digital Libraries </li></ul><ul><li>Databases touch all aspects of our lives </li></ul>Applications of DBMS
    15. 15. Advantages of a DBMS <ul><li>Program-Data Independence </li></ul><ul><ul><li>Insulation between programs and data: Allows changing data storage structures and operations without having to change the DBMS access programs. </li></ul></ul><ul><li>Efficient Data Access </li></ul><ul><ul><li>DBMS uses a variety of techniques to store & retrieve data efficiently </li></ul></ul><ul><li>Data Integrity & Security </li></ul><ul><ul><li>Before inserting salary of an employee, the DBMS can check that the dept. budget is not exceeded </li></ul></ul><ul><ul><li>Enforces access controls that govern what data is visible to different classes of users </li></ul></ul>
    16. 16. Advantages of a DBMS <ul><li>Data Administration </li></ul><ul><ul><li>When several users share data , centralizing the administration offers significant improvement </li></ul></ul><ul><li>Concurrent Access & Crash Recovery </li></ul><ul><ul><li>DBMS schedules concurrent access to the data in such a manner that users think of the data as being accessed by only one user at a time </li></ul></ul><ul><ul><li>DBMS protects users from the ill-effects of system failures </li></ul></ul><ul><li>Reduced Application Development Time </li></ul><ul><ul><li>Many important tasks are handled by the DBMS </li></ul></ul>
    17. 17. Data Model Overview <ul><li>What is data model ? </li></ul><ul><li>Why data models are important ? </li></ul><ul><li>Basic data-modeling building blocks. </li></ul><ul><li>What are business rules and how do they influence database design? </li></ul><ul><li>How the major data models evolved ? </li></ul><ul><li>How data models can be classified by level of abstraction ? </li></ul>
    18. 18. What is Data Model <ul><li>Data Model : A set of concepts to describe the structure of a database, and certain constraints that the database should obey. </li></ul><ul><li>Data Model Operations : Operations for specifying database retrievals and updates by referring to the concepts of the data model. Operations on the data model may include basic operations and user-defined operations . </li></ul>
    19. 19. Data Model Basic Building Blocks <ul><li>Entity </li></ul><ul><ul><li>Anything about which data will be collected/stored </li></ul></ul><ul><li>Attribute </li></ul><ul><ul><li>Characteristic of an entity </li></ul></ul><ul><li>Relationship </li></ul><ul><ul><li>Describes an association among entities </li></ul></ul><ul><ul><ul><li>One-to-one (1:1) relationship </li></ul></ul></ul><ul><ul><ul><li>One-to-many (1:M) relationship </li></ul></ul></ul><ul><ul><ul><li>Many-to-many (M:N or M:M) relationship </li></ul></ul></ul><ul><li>Constraint </li></ul><ul><ul><li>A restriction placed on the data </li></ul></ul>
    20. 20. Importance of Data Models <ul><li>Data models </li></ul><ul><ul><li>Representations, usually graphical, of complex real-world data structures </li></ul></ul><ul><ul><li>Facilitate interaction among the designer, the applications programmer and the end user </li></ul></ul><ul><li>End-users have different views and needs for data </li></ul><ul><li>Data model organizes data for various users </li></ul>
    21. 21. Business Rules <ul><li>Brief, precise and unambiguous descriptions of policies, procedures or principles within the organization </li></ul><ul><li>Apply to any organization that stores and uses data to generate information </li></ul><ul><li>Description of operations that help to create and enforce actions within that organization’s environment </li></ul>
    22. 22. The Evolution of Data Models
    23. 23. Categories of data models <ul><li>Conceptual ( high-level , semantic ) data models: Provide concepts that are close to the way many users perceive data. (Also called entity-based or object-based data models.) </li></ul><ul><li>Physical ( low-level , internal ) data models: Provide concepts that describe details of how data is stored in the computer. </li></ul><ul><li>Implementation ( representational/External ) data models: Provide concepts that fall between the above two, balancing user views with some computer storage details. </li></ul>
    24. 24. Degrees of Data Abstraction <ul><li>American National Standards Institute (ANSI) </li></ul><ul><ul><li>Standards Planning and Requirements Committee (SPARC) </li></ul></ul><ul><ul><ul><li>Developed standards 1970 </li></ul></ul></ul><ul><ul><ul><li>Framework for data modeling based on degrees of data abstraction: </li></ul></ul></ul><ul><ul><ul><ul><li>External </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Conceptual </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Internal </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Physical </li></ul></ul></ul></ul>
    25. 25. The External Model <ul><li>Each end users’ view of the data environment </li></ul><ul><li>Modeler subdivides requirements and constraints into functional (Business unit’s) modules </li></ul><ul><ul><li>These can be examined within the framework of their external models </li></ul></ul>
    26. 26. External Model – Advantages <ul><li>Easy to identify specific data required to support each business unit’s operations </li></ul><ul><li>Facilitates designer’s job by providing feedback about the model’s adequacy </li></ul><ul><li>Creation of external models helps to identify and ensure security constraints in the database design </li></ul><ul><li>Simplifies application program development </li></ul>
    27. 27. The Conceptual Model <ul><li>Global view of the entire database </li></ul><ul><li>Representation of data as viewed by the entire organization </li></ul><ul><li>Basis for identification and high-level description of main data objects, avoiding details </li></ul>
    28. 28. The Conceptual Model <ul><li>Software and hardware independent </li></ul><ul><ul><li>Independent of DBMS software </li></ul></ul><ul><ul><li>Independent of hardware to be used </li></ul></ul><ul><ul><li>Changes in either hardware or DBMS software have no effect on the database design at the conceptual level </li></ul></ul><ul><li>Most widely used conceptual model is the Entity Relationship (ER) model </li></ul><ul><ul><li>Provides a relatively easily understood macro level view of data environment </li></ul></ul>
    29. 29. The Internal Model <ul><li>The database as “seen” by the DBMS </li></ul><ul><li>Maps the conceptual model to the DBMS </li></ul><ul><li>Depicts a specific representation of an internal model </li></ul><ul><li>Logical independence </li></ul><ul><ul><li>Can change the internal model without affecting the conceptual model </li></ul></ul>
    30. 30. The Physical Model <ul><li>Lowest level of abstraction </li></ul><ul><ul><li>Describes the way data are saved on storage media such as disks or tapes </li></ul></ul><ul><li>Software and hardware dependent </li></ul><ul><ul><li>Requires database designers to have a detailed knowledge of the hardware and software used to implement database design </li></ul></ul><ul><li>Physical independence </li></ul><ul><ul><li>Can change the physical model without affecting the internal model </li></ul></ul>
    31. 31. Degrees of Data Abstraction - Summary
    32. 32. Hierarchical DB model <ul><li>Logically represented by an upside down TREE </li></ul><ul><li>Each parent can have many children </li></ul><ul><li>Each child has only one parent </li></ul><ul><li>The top layer is perceived as the parent of the segment directly beneath it. </li></ul><ul><li>The segments below other segments are the children of the segment above them. </li></ul>SALIENT FEATURES
    33. 33. Hierarchical DB model
    34. 34. Hierarchical DB model
    35. 35. Example PARENT CHILD Emp No. First Name Last Name Dept Num 100 John Dougals 2A 101 Antony Wanton 2B 102 Mary Queen 2C 103 David Moorey 2D Serial No. Type User Emp No. 3009734-4 Computer 100 3-23-283742 Monitor 100 2-22-723423 Monitor 100 232342 Printer 100
    36. 36. Advantages <ul><li>Conceptual simplicity </li></ul><ul><li>Data independence </li></ul><ul><li>Efficiency dealing with a large database </li></ul>
    37. 37. Disadvantages <ul><li>Complex implementation </li></ul><ul><li>Difficult to manage and lack of standards </li></ul><ul><li>Lacks structural independence </li></ul><ul><li>Applications programming and use complexity </li></ul><ul><li>Implementation limitations (no M:N relationship) </li></ul>
    38. 38. Network DB model
    39. 39. Network DB model <ul><li>Developed in mid 1960s as part of work of CODASYL (Conference on Data Systems Languages) which proposed programming language COBOL (1966) and then network model (1971) </li></ul><ul><li>The network model has greater flexibility than the hierarchical model for handling complex spatial relationships </li></ul><ul><li>Objective of network model is to separate data structure from physical storage, eliminate unnecessary duplication of data with associated errors and costs </li></ul><ul><li>The Network Database Model was created for three main purposes : </li></ul><ul><li>- representing a complex data relationship more effectively </li></ul><ul><li>- improving database performance </li></ul><ul><li>- imposing a database standard </li></ul>
    40. 40. Network DB model <ul><li>Major characteristic of this database model is that it comprises of at least two record types ; the owner & the member. </li></ul><ul><li>An owner is a record type equivalent to the parent type in the hierarchal database model, and the member record type resembles the child type in the hierarchal model. </li></ul><ul><li>The network database model uses a data management language that defines data characteristics and the data structure in order to manipulate the data. </li></ul>
    41. 41. Network DB model <ul><li>The network model contains logical information such as connectivity relationships among nodes and links, directions of links, and costs of nodes and links. </li></ul><ul><li>Example with diagram </li></ul>
    42. 42. Key terms in network Model <ul><li>A node represents an object of interest. </li></ul><ul><li>A link represents a relationship between two nodes. Within a directed network, any link can be bidirected (that is, able to be traversed either from the start node to the end node or from the end node to the start node) or unidirected (that is, able to be traversed only from the start node to the end node). Within an undirected network, all links are bidirected. </li></ul><ul><li>A path is an alternating sequence of nodes and links, beginning and ending with nodes, and usually with no nodes and links appearing more than once. (Repeating nodes and links within a path are permitted, but are rare in most network applications.) </li></ul>
    43. 43. Key terms in network Model <ul><li>A network is a set of nodes and links. A network is directed if the links that it contains are directed, and a network is undirected if the links that it contains are undirected. </li></ul><ul><li>A logical network contains connectivity information but no geometric information. This is the model used for network analysis. A logical network can be treated as a directed graph or undirected graph, depending on the application. </li></ul><ul><li>Cost is a non-negative numeric attribute that can be associated with links or nodes for computing the minimum cost path </li></ul><ul><li>Duration is a non-negative numeric attribute that can be associated with links or nodes to specify a duration value for the link or node. </li></ul>
    44. 44. Network Hierarchy <ul><li>A network hierarchy enables us to represent a network with multiple levels of abstraction by assigning a hierarchy level to each node. </li></ul><ul><li>The lowest (most detailed) level in the hierarchy is level 1, and successive higher levels are numbered 2, 3, and so on. </li></ul><ul><li>Nodes at adjacent levels of a network hierarchy have parent-child relationships. </li></ul><ul><li>Each node at the higher level can be the parent node for one or more nodes at the lower level. </li></ul>
    45. 45. Network Hierarchy <ul><li>Each node at the lower level can be a child node of one node at the higher level. </li></ul><ul><li>Sibling nodes are nodes that have the same parent node. </li></ul><ul><li>Links can also have parent-child relationships. However, because links are not assigned to a hierarchy level, there is not necessarily a relationship between link parent-child relationships and network hierarchy levels. </li></ul><ul><li>Sibling links are links that have the same parent link. </li></ul>
    46. 46. Applications of Network Model <ul><li>In a typical road network , the intersections of roads are nodes and the road segments between two intersections are links. An important operation with a road network is to find the path from a start point to an end point, minimizing either the travel time or distance. There may be additional constraints on the path computation, such as having the path go through a particular landmark or avoid a particular intersection. </li></ul><ul><li>Also in a biochemical process metabolic pathways are networks involved in enzymatic reactions, while regulatory pathways represent protein-protein interactions. In this example, a pathway is a network; genes, proteins, and chemical compounds are nodes; and reactions among nodes are links. </li></ul>
    47. 47. Applications of Network Model <ul><li>The subway network of any major city is probably best modeled as a logical network, assuming that precise spatial representation of the stops and track lines is unimportant. Important operations with a train network include finding all stations that can be reached from a specified station, finding the number of stops between two specified stations, and finding the travel time between two stations. </li></ul>
    48. 48. Advantages <ul><li>Simplicity : The network model is conceptually simple and easy to design. </li></ul><ul><li>Ability to handle more relationship types : The network model can handle the one-to-many and many-to-many relationships. </li></ul><ul><li>Ease of data access : In the network database terminology, a relationship is a set. Each set comprises of two types of records.- an owner record and a member record, In a network model an application can access an owner record and all the member records within a set. </li></ul>
    49. 49. Advantages <ul><li>Data Integrity : In a network model, no member can exist without an owner. A user must therefore first define the owner record and then the member record. This ensures the integrity. </li></ul><ul><li>Data Independence : The network model draws a clear line of demarcation between programs and the complex physical storage details. The application programs work independently of the data. Any changes made in the data characteristics do not affect the application program. </li></ul>
    50. 50. Disadvantages <ul><li>System Complexity : The structure of the network model is very difficult to change. This type of system is very complex </li></ul><ul><li>Lack of Structural independence : This model lacks structural independence. This database model should be used when it is necessary to have a flexible way of representing objects and their relationship. Any changes made to the database structure require the application programs to be modified before they can access data. </li></ul>
    51. 51. Relational DB model
    52. 52. Why Study the Relational Model? <ul><li>Most widely used model. </li></ul><ul><ul><li>Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. </li></ul></ul><ul><li>“ Legacy systems” in older models </li></ul><ul><ul><li>E.G., IBM’s IMS </li></ul></ul><ul><li>Recent competitor: object-oriented model </li></ul><ul><ul><li>ObjectStore, Versant, Ontos </li></ul></ul><ul><ul><li>A synthesis emerging: object-relational model </li></ul></ul><ul><ul><ul><li>Informix Universal Server, UniSQL, O2, Oracle, DB2 </li></ul></ul></ul>
    53. 53. Definitions Instance <ul><li>A database instance , or an ‘instance’ is made up of the background processes needed by the database software. </li></ul><ul><li>Include a process monitor, session monitor, lock monitor, etc. They will vary from database vendor to database vendor. </li></ul>
    54. 54. Definitions What is a schema? <ul><li>A SCHEMA IS NOT A DATABASE, AND A DATABASE IS NOT A SCHEMA. </li></ul><ul><li>A database instance controls 0 or more databases. </li></ul><ul><li>A database contains 0 or more database application schemas. </li></ul><ul><li>A database application schema </li></ul><ul><ul><li>Set of database objects that apply to a specific application. </li></ul></ul><ul><ul><li>Objects are relational in nature, and are related to each other, within a database to serve a specific functionality. </li></ul></ul><ul><ul><li>Example payroll, purchasing, calibration, trigger, etc. </li></ul></ul><ul><ul><li>A database application schema not a database. Usually several schemas coexist in a database. </li></ul></ul><ul><li>A database application is the code base to manipulate and retrieve the data stored in the database application schema. </li></ul>
    55. 55. Definitions Cont. Primary Definitions <ul><li>Table , a set of columns that contain data. In the old days, a table was called a file. </li></ul><ul><li>Row , a set of columns from a table reflecting a record. </li></ul><ul><li>Index , an object that allows for fast retrieval of table rows. Every primary key and foreign key should have an index for retrieval speed. </li></ul><ul><li>Primary key , often designated pk, is 1 or more columns in a table that makes a record unique. </li></ul>
    56. 56. Definitions Cont. Primary Definitions <ul><li>Foreign key , often designated fk, is a common column common between 2 tables that define the relationship between those 2 tables. </li></ul><ul><li>Foreign keys are either mandatory or optional. Mandatory forces a child to have a parent by creating a not null column at the child. Optional allows a child to exist without a parent, allowing a nullable column at the child table (not a common circumstance). </li></ul>
    57. 57. Definitions Cont. Primary Definitions <ul><li>Entity Relationship Diagram or ER is a pictorial representation of the application schema. </li></ul>
    58. 58. Index_no
    59. 59. Definitions Cont. Primary Definitions <ul><li>Constraints are rules residing in the database’s data dictionary governing relationships and dictating the ways records are manipulated, what is a legal move vs. what is an illegal move. </li></ul><ul><li>These are of the utmost importance for a secure and consistent set of data. </li></ul>
    60. 60. Definitions Cont. Primary Definitions <ul><li>Data Manipulation Language or DML, sql statements that insert, update or delete database in a database. </li></ul><ul><li>Data Definition Language or DDL , sql used to create and modify database objects used in an application schema. </li></ul>
    61. 61. Definitions Cont. Primary Definitions <ul><li>A transaction is a logical unit of work that contains one or more SQL statements. </li></ul><ul><ul><li>A transaction is an atomic unit. </li></ul></ul><ul><ul><li>The effects of all the SQL statements in a transaction can be either all committed (applied to the database) or all rolled back (undone from the database), insuring data consistency. </li></ul></ul>
    62. 62. Definitions Cont. Primary Definitions <ul><li>A view is a selective presentation of the structure of, and data in, one or more tables (or other views). </li></ul><ul><li>A view is a ‘virtual table’, having predefined columns and joins to one or more tables, reflecting a specific facet of information. </li></ul>
    63. 63. Definitions Cont. Primary Definitions <ul><li>Database triggers are PL/SQL, Java, or C procedures that run implicitly whenever a table or view is modified or when some user actions or database system actions occur. </li></ul><ul><ul><li>Database triggers can be used in a variety of ways for managing your database. </li></ul></ul><ul><ul><li>For example, they can automate data generation, audit data modifications, enforce complex integrity constraints, and customize complex security authorizations. </li></ul></ul><ul><ul><li>Trigger methodology differs between databases. </li></ul></ul>
    64. 64. Terminology Name Price Category Manufacturer gizmo $19.99 gadgets GizmoWorks Power gizmo $29.99 gadgets GizmoWorks SingleTouch $149.99 photography Canon MultiTouch $203.99 household Hitachi Tuples or rows or records Attribute names Table name or relation name Products:
    65. 65. Relational DB model
    66. 66. Relation subject to the following rules <ul><li>Relation (file, table) is a two-dimensional table. </li></ul><ul><li>Attribute (i.e. field or data item) is a column in the table. </li></ul><ul><li>Each column in the table has a unique name within that table. </li></ul><ul><li>Each column is homogeneous. Thus the entries in any column are all of the same type (e.g. age, name, employee-number, etc). </li></ul><ul><li>Each column has a domain , the set of possible values that can appear in that column. </li></ul><ul><li>A Tuple (i.e. record) is a row in the table. </li></ul>
    67. 67. Relation subject to the following rules <ul><li>The order of the rows and columns is not important. </li></ul><ul><li>Values of a row all relate to some thing or portion of a thing. </li></ul><ul><li>Repeating groups (collections of logically related attributes that occur multiple times within one record occurrence) are not allowed. </li></ul><ul><li>Duplicate rows are not allowed (candidate keys are designed to prevent this). </li></ul><ul><li>Cells must be single-valued (but can be variable length). Single valued means the following: </li></ul><ul><ul><li>Cannot contain multiple values such as 'A1,B2,C3'. </li></ul></ul><ul><ul><li>Cannot contain combined values such as 'ABC-XYZ' where 'ABC' means one thing and 'XYZ' another </li></ul></ul>
    68. 68. <ul><li>Thank You </li></ul>