Database and Database Types

Total Page:16

File Type:pdf, Size:1020Kb

Database and Database Types Various Key Constraints in RDBMS Dr. V. V. Subrahmanyam Associate Professor, SOCIS, IGNOU Relational Schema • A list of attributes that describe the structure of a relation. • A relation is a set of tuples that conform to the schema. • Examples: – SALESPERSON(SSN, NAME, YEAR_OF_JOIN, DEPT) – STUDENT(SNO, SNAME, MAJOR, DOB) – BOOK(ISBN, BOOK_TITLE, PUBLISHER, AUTHOR, YEAR_OF_PUB) RELATIONAL DB and RELATIONAL DB SCHEMA • A relational database is a collection of relations with distinct relation names. • The relational database schema is the collection of schemas for the relations in the database. RELATIONAL DB SCHEMA – AN EXAMPLE • EMPLOYEE(FNAME, LNAME, SSN, DOB, ADD1, ADD2, SEX, SALARY, SUPERSSN, DEPTNO) • DEPARTMENT(DNAME,DEPTNO, MGRSSN) • DEPT_LOCATIONS(DEPTNO, DLOCATION) • WORKS_ON(ESSN, PNO,HOURS) • PROJECT(PNAME, PNO,PLOCATION, DEPTNO) • DEPENDENT(ESSN, DEPND_NAME, SEX, DOB, REALTIONSHIP) Constraints • Various restrictions on data that can be specified on a relational database in the form of constraints. • These include: – Domain Constraints – Key Constraints – Integrity Constraints – Referential Integrity (Foreign Key) Contd.. • Others – Data Dependencies – Functional Dependencies Domain Constraints • Domain Constraints specify that the value of each attribute A must be an atomic value from the domain Integrity Constraints • It is a condition that is specified on a database schema, an restricts the data that can be stored in an instance of the database. • A DBMS enforces the integrity constraints. Contd… • These are specified and enforced at different times: – When the DBA or end user defines a DB schema, s/he specifies them. – When a DB application is run, the DBMS checks for violations and disallows changes to the data that violate the specified Integrity constraints. Example • No two students have the same StudentID value. • No two employees can have the same Social Security Number(SSN) • No two citizens of India can have same Aadhaar card Number. Key Constraints • A key constraint is a statement that a certain minimal subset of the fields of a relation is a unique identifier for a tuple. Various Key Constraints • Super Key • Candidate Key • Primary Key • Foreign Key • Composite Key • Alternate key • Secondary Key Consider… • Employee (ENo, EName, Address, DeptID, Salary) • Department(DeptID, DName, MngrID, Location_ID) Super Key • Super Key is a set of one or more than one key that can be used to identify a record uniquely in a table. • Primary key, Unique Key, Alternate Key are subset of Super keys. • A table can have many Super keys. Example • In Employee Table, i. ENo ii. ENo, EName iii. ENo, Address iv. ENo, DeptID v. ENo, Salary vi. EName, Address vii. Ename, Address, DeptID Any combination shown above can identify the records uniquely will be a Super Key. Candidate Key • It is a set of one or more fields/columns that can identify a record uniquely in a table. • There can be multiple candidate keys in one table. • Each candidate key can work as a Primary key. • It can be defined as minimal Super Key or irreducible Super Key. Contd… Candidate Keys are: I. ENo II. EName, Address ENo can identify the record uniquely and similarly combination of EName and Address can identify the record Uniquely. Primary Key • Primary key is a set of one or more fields of a table that uniquely identify a record in database table. • It can not accept NULL, duplicate values. • Only one candidate key can be Primary Key • In the example of candidate keys, ENo will be the Primary Key. Alternate Key • Alternate key can be any of the candidate keys except for the Primary Key. • In the above example of candidate keys, as ENo is identified as primary key, “EName, Address” is an alternate key Foreign Key • Sometimes the information stored in a relation is linked to the information stored in another relation. • If one relation is modified, the other must be checked, and perhaps modified, to keep the data consistent. • The most common Integrity constraint involving two relations is a foreign key constraint. Contd… • A foreign key is an attribute or combination of attributes in one base table that points to the candidate key of another table. • In the below example, DeptID of Employee is Foreign Key Employee (ENo, EName, Address, DeptID, Salary) Department(DeptID, DName, MngrID, Location_ID) Composite Key • It is a combination of more than one field or column of a table to form a candidate key or a primary key. • If we use “Name, Address” as a primary key then it is called as the Composite primary key. Secondary Key • The attributes those are not the Super Keys, but still can identify the records (not uniquely) • Example: Any key EName, Address, Salary, DeptID, as they can identify the records but they might not be unique. Unique Key • Unique Key is a set of one or more fields/columns of a table that uniquely identify a record in database table. • It is like Primary key, but it can accept a NULL value and it cannot have duplicate values. Functional Dependencies • A Functional Dependency describes a relationship between attributes within a single relation. • An attribute is functionally dependent on another if we can use the value of one attribute to determine the value of another. • Example: Employee_Name is functionally dependent on Social_Security_Number because Social_Security_Number can be used to uniquely determine the value of Employee_Name. • We use the arrow symbol → to indicate a functional dependency. • X → Y is read as, X functionally determines Y • Student_ID → Student_Major • Student_ID, CourseNumber, Semester → Grade • Course_Number, Section → Professor, Classroom, NumberOfStudents • CarModel, Options, TaxRate → Car_Price .
Recommended publications
  • Create Table Identity Primary Key Sql Server
    Create Table Identity Primary Key Sql Server Maurits foozle her Novokuznetsk sleeplessly, Johannine and preludial. High-principled and consonantal Keil often stroke triboluminescentsome proletarianization or spotlight nor'-east plop. or volunteer jealously. Foul-spoken Fabio always outstrips his kursaals if Davidson is There arise two ways to create tables in your Microsoft SQL database. Microsoft SQL Server has built-in an identity column fields which. An identity column contains a known numeric input for a row now the table. SOLVED Can select remove Identity from a primary case with. There cannot create table created on every case, primary key creates the server identity column if the current sql? As I today to refute these records into a U-SQL table review I am create a U-SQL database. Clustering option requires separate table created sequence generator always use sql server tables have to the key. This key creates the primary keys per the approach is. We love create Auto increment columns in oracle by using IDENTITY. PostgreSQL Identity Column PostgreSQL Tutorial. Oracle Identity Column A self-by-self Guide with Examples. Constraints that table created several keys means you can promote a primary. Not logged in Talk Contributions Create account already in. Primary keys are created, request was already creates a low due to do not complete this. IDENTITYNOT NULLPRIMARY KEY Identity Sequence. How weak I Reseed a SQL Server identity column TechRepublic. Hi You can use one query eg Hide Copy Code Create table tblEmplooyee Recordid bigint Primary key identity. SQL CREATE TABLE Statement Tutorial Republic. Hcl will assume we need be simplified to get the primary key multiple related two dissimilar objects or adding it separates structure is involved before you create identity? When the identity column is part of physician primary key SQL Server.
    [Show full text]
  • Keys Are, As Their Name Suggests, a Key Part of a Relational Database
    The key is defined as the column or attribute of the database table. For example if a table has id, name and address as the column names then each one is known as the key for that table. We can also say that the table has 3 keys as id, name and address. The keys are also used to identify each record in the database table . Primary Key:- • Every database table should have one or more columns designated as the primary key . The value this key holds should be unique for each record in the database. For example, assume we have a table called Employees (SSN- social security No) that contains personnel information for every employee in our firm. We’ need to select an appropriate primary key that would uniquely identify each employee. Primary Key • The primary key must contain unique values, must never be null and uniquely identify each record in the table. • As an example, a student id might be a primary key in a student table, a department code in a table of all departments in an organisation. Unique Key • The UNIQUE constraint uniquely identifies each record in a database table. • Allows Null value. But only one Null value. • A table can have more than one UNIQUE Key Column[s] • A table can have multiple unique keys Differences between Primary Key and Unique Key: • Primary Key 1. A primary key cannot allow null (a primary key cannot be defined on columns that allow nulls). 2. Each table can have only one primary key. • Unique Key 1. A unique key can allow null (a unique key can be defined on columns that allow nulls.) 2.
    [Show full text]
  • Rfgen Users Guide
    DataMax Software Group Inc. 1101 Investment Blvd. El Dorado Hills, CA 95762 USA RFgen Users Guide All Editions RFgen 5.2 © 2021 RFgen Software. A division of DataMAX Software Group, Inc. All Rights Reserved. RFgen 5.2 Users Guide Table of Contents Introduction to RFgen 1 Connection Tab 33 Basic Implementation Steps 2 Connection Tab - SAP 33 Configuration Overview 3 SAP Data Encryption 34 Configurations Shared by Dev Studio To Configure for JDE 35 and Services Console: 3 Adding A New Web Services Connection 40 Connections Shared by Dev Studio Configuring the Host Connection 42 and Services Console: 4 Configuring User Access Control 45 Configurations Available Only in Dev Studio 4 Adding or Removing RFgen Admin- istrators / RFgen SubAdmins 46 Connections Available Only in Dev Studio 4 Dev Studio Configuration Options 47 Configuring the RFgen Application Data- Configuring Menu and Key Settings 48 base 4 System Menu Configuration 48 Configuring Application Preferences 7 Function Key Actions 49 Configuring Application Services 10 Configuring the Scripting Environment 50 Configuring Environment Settings 14 Configuring Source Control Options 52 Configure System Environment 14 Configuring System Properties 54 Configuring Transaction Management DB Connection 19 Download Enterprise Objects 54 Create Application Event Database 19 Downloading ERP Business Functions 55 Configuring System Queues and Tasks 20 Downloading JDE Processing Options 55 Add New Enterprise Connections 22 Viewing Enterprise Objects 57 Adding a New DataSource Connection 22 Viewing
    [Show full text]
  • 3 Data Definition Language (DDL)
    Database Foundations 6-3 Data Definition Language (DDL) Copyright © 2015, Oracle and/or its affiliates. All rights reserved. Roadmap You are here Data Transaction Introduction to Structured Data Definition Manipulation Control Oracle Query Language Language Language (TCL) Application Language (DDL) (DML) Express (SQL) Restricting Sorting Data Joining Tables Retrieving Data Using Using ORDER Using JOIN Data Using WHERE BY SELECT DFo 6-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 3 Data Definition Language (DDL) Objectives This lesson covers the following objectives: • Identify the steps needed to create database tables • Describe the purpose of the data definition language (DDL) • List the DDL operations needed to build and maintain a database's tables DFo 6-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 4 Data Definition Language (DDL) Database Objects Object Description Table Is the basic unit of storage; consists of rows View Logically represents subsets of data from one or more tables Sequence Generates numeric values Index Improves the performance of some queries Synonym Gives an alternative name to an object DFo 6-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 5 Data Definition Language (DDL) Naming Rules for Tables and Columns Table names and column names must: • Begin with a letter • Be 1–30 characters long • Contain only A–Z, a–z, 0–9, _, $, and # • Not duplicate the name of another object owned by the same user • Not be an Oracle server–reserved word DFo 6-3 Copyright © 2015, Oracle and/or its affiliates. All rights reserved. 6 Data Definition Language (DDL) CREATE TABLE Statement • To issue a CREATE TABLE statement, you must have: – The CREATE TABLE privilege – A storage area CREATE TABLE [schema.]table (column datatype [DEFAULT expr][, ...]); • Specify in the statement: – Table name – Column name, column data type, column size – Integrity constraints (optional) – Default values (optional) DFo 6-3 Copyright © 2015, Oracle and/or its affiliates.
    [Show full text]
  • Analysis Services Best Practices
    presented by Marco Russo [email protected] sqlbi.com sqlbi.com Who am I Latest conferences BI Expert and Consultant PASS Europe 2009 – Neuss – Germany Problem Solving Complex Project Assistance PASS 2009 – Seattle – USA DataWarehouse Assesments and Development SQL Conference 2010 – Milan – Italy Courses, Trainings and Workshops Teched 2010 – New Orleans – USA Microsoft Business Intelligence Partner Book Writer 24 Hours of PASS 2010 – Online PASS 2010 – Seattle – USA sqlbi.com Agenda DATA SOURCE (RELATIONAL MODELING) Relational Schema Decoupling Layer Dimensional Patterns Slowly Changing Dimensions Junk Dimensions Parent-Child Hierarchies Role Dimensions Drill-through Calculation Dimensions sqlbi.com sqlbi.com 1 CONFIGURATION Source OLTP DB SQLBI Methodology Relational Schema SNOWFLAKE SCHEMA Analysis Services reads data Mirror OLTP from Data Mart A Data Mart is not the Data Staging Area Warehouse ODS Data Warehouse Operational Data Store Data Marts OLAP Cubes Custom Reports Client Tools Other Systems Excel, Proclarity, … Customers Relational Schema Relational Schema STAR SCHEMA STAR VS. SNOWFLAKE SCHEMA Options for dimensions from snowflake schema: Transform into a star schema by using views Transform into a star schema by using DWV queries Join tables in SSAS dimensions Referenced Dimension Ideal solution Use SQL views to generate a star schema The star schema eliminates ambiguity Data Source Decoupling USE VIEWS TO DECOUPLE DIFFERENT LAYERS OF A BI SOLUTION DATA SOURCE (RELATIONAL MODELING) OLTP OLTP Mirror
    [Show full text]
  • Database Concepts Page 1 of 5
    Article :: Design Your Database :: Database Concepts Page 1 of 5 Home > Support > Articles > Design Your Database Adobe acquired InterAKT Database Concepts [ May 15, 2005 ] Table 1. Introduction 2. Database Concepts A table is a data grid used to store similar information. It 3. Plan Your Database is made up of columns (also known as fields), which 4. Relations Between Tables represent entity attributes or pieces of data, and rows, 5. Normalization which represent individual records. All records in a table 6. Best Practices in Database Design share the same fields. In the previous example, a TV set 7. Database Naming Convention and a T-shirt are records in the table that stores products. 8. Databases By Example The price and description of each product represent 9. Useful Resources columns in this table. Usually, databases have more tables, each corresponding to one of the objects you are trying to represent. Relation In a database, tables are usually related in a logical way. A link between two tables is called a relation. A relation always involves two tables and one column from each. Linking tables is very important for avoiding data redundancy and for better organizing your database. Suppose the TV set product mentioned earlier was manufactured by a company called ACME, and you also store a CD player produced by ACME. If there were not separate tables for products and manufacturers, you would need to store the same manufacturer twice in your database, once for each product. This not only takes up a lot of disk space, but maintaining several copies of the same data can make updates very difficult.
    [Show full text]
  • Relational Data Model and SQL Data Definition Language
    The Relational Data Model and SQL Data Definition Language Paul Fodor CSE316: Fundamentals of Software Development Stony Brook University http://www.cs.stonybrook.edu/~cse316 1 The Relational Data Model A particular way of structuring data (using relations) proposed in 1970 by E. F. Codd Mathematically based Expressions ( queries) can be analyzed by DBMS and transformed to equivalent expressions automatically (query optimization) Optimizers have limits (=> the programmer still needs to know how queries are evaluated and optimized) 2 (c) Pearson Education Inc. and Paul Fodor (CS Stony Brook) Relational Databases In Relational DBs, the data is stored in tables Attributes (column Relation name: Student headers) Id Name Address Status 1111 John 123 Main fresh Tuples 2222 Mary 321 Oak (rows) 1234 Bob 444 Pine 9999 Joan 777 Grand senior 3 (c) Pearson Education Inc. and Paul Fodor (CS Stony Brook) Table Set of rows (no duplicates) Each row/tuple describes a different entity Each column/attribute states a particular fact about each entity Each column has an associated domain Id Name Address Status 1111 John 123 Main fresh 2222 Mary 321 Oak 1234 Bob 444 Pine 9999 Joan 777 Grand senior Domain of Id: integers Domain of Name: strings 4 Domain of(c) PearsonStatus Education= Inc.{fresh, and Paul Fodor soph, (CS Stony junior,Brook) senior} Relation A relation is the mathematical entity corresponding to a table: A relation R can be thought of as predicate R A tuple (x,y,z) is in the relation R iff R(x,y,z) is true Why Relations/Tables? Very simple model.
    [Show full text]
  • Java and RDBMS Married with Issues Database Constraints Speaker
    Java and RDBMS Married with issues Database constraints Speaker Jeroen van Schagen Situation store Java Relational Application Database retrieve JDBC JDBC • Java Database Connectivity • Data Access API ( java.sql, javax.sql ) • JDK 1.1 (1997) • Relational Database • Many implementations Connection connection = …; Statement statement = connection.createStatement(); String sql = “INSERT INTO user (name) VALUES (‘Jan’)”; statement.executeUpdate(sql); Connection connection = …; Statement statement = connection.createStatement(); String sql = “INSERT INTO user (name) VALUES (‘Jan’)”; statement.executeUpdate(sql); Database Maintain data User name : varchar(3) NOT-NULL, UNIQUE Name can only have up to 3 characters Name is required Name can only occur once Constraint types Not null Check Unique key Length Type Foreign key Primary key User name : varchar(3) NOT-NULL, UNIQUE Connection connection = …; Statement statement = connection.createStatement(); String sql = “INSERT INTO user (name) VALUES (‘Jan’)”; statement.executeUpdate(sql); What happens? Assuming the user table is empty User name : varchar(3) NOT-NULL, UNIQUE Connection connection = …; Statement statement = connection.createStatement(); String sql = “INSERT INTO user (name) VALUES (‘Jan’)”; statement.executeUpdate(sql); 1 row updated User name : varchar(3) NOT-NULL, UNIQUE Connection connection = …; Statement statement = connection.createStatement(); String sql = “INSERT INTO user (name) VALUES (‘Jan’)”; statement.executeUpdate(sql); statement.executeUpdate(sql); WhatWhat will happens?
    [Show full text]
  • Dynamic Information with IBM Infosphere Data Replication CDC
    Front cover IBM® Information Management Software Smarter Business Dynamic Information with IBM InfoSphere Data Replication CDC Log-based for real-time high volume replication and scalability High throughput replication with integrity and consistency Programming-free data integration Chuck Ballard Alec Beaton Mark Ketchie Anzar Noor Frank Ketelaars Judy Parkes Deepak Rangarao Bill Shubin Wim Van Tichelen ibm.com/redbooks International Technical Support Organization Smarter Business: Dynamic Information with IBM InfoSphere Data Replication CDC March 2012 SG24-7941-00 Note: Before using this information and the product it supports, read the information in “Notices” on page ix. First Edition (March 2012) This edition applies to Version 6.5 of IBM InfoSphere Change Data Capture (product number 5724-U70). © Copyright International Business Machines Corporation 2012. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . ix Trademarks . x Preface . xi The team who wrote this book . xii Now you can become a published author, too! . xvi Comments welcome. xvii Stay connected to IBM Redbooks . xvii Chapter 1. Introduction and overview . 1 1.1 Optimized data integration . 2 1.2 InfoSphere architecture . 4 Chapter 2. InfoSphere CDC: Empowering information management. 9 2.1 The need for dynamic data . 10 2.2 Data delivery methods. 11 2.3 Providing dynamic data with InfoSphere CDC . 12 2.3.1 InfoSphere CDC architectural overview . 14 2.3.2 Reliability and integrity . 16 Chapter 3. Business use cases for InfoSphere CDC . 19 3.1 InfoSphere CDC techniques for transporting changed data .
    [Show full text]
  • §2 – the Relational Model and Normalization Chapter Objectives
    §2 – The Relational Model and Normalization Fen Wang [email protected] Lecture 4 IT468 DB @ ITAM 1 Chapter Objectives • The foundation of the relational model • Characteristics of relations • The basic relational terminology • Primary, candidate, and composite keys • The purpose and use of surrogate keys • How foreign keys represent relationships • The meaning of functional dependencies • Possible insertion, deletion, and update anomalies • Apply a process for normalizing relations IT468 DB @ ITAM 2 1 The Relational Database Model • The dominant database model is the relational database model – all current major DBMS products are based on it • Created by IBM engineer E. F. Codd in 1970 • It was based on mathematics called relational algebra • Now the standard model for commercial DBMS products IT468 DB @ ITAM 3 Important Relational Model Terms • Entity • Relation • Functional Dependency • Determinant • Candidate Key • Composite Key • Primary Key • Surrogate Key • Foreign Key • Referential integrity constraint • Normal Form • Multivalued Dependency IT468 DB @ ITAM 4 2 Entity • An entity is something of importance to a user that needs to be represented in a database: – Customers – Computers – Sales • An entity represents one theme or topic IT468 DB @ ITAM 5 Relation • Relational DBMS products store data about entities in relations, a special type of table • A relation is a two-dimensional table that has specific characteristics • The table dimensions, like a matrix, consist of rows and columns IT468 DB @ ITAM 6 3 Characteristics of a Relation
    [Show full text]
  • UNIT III (RDBMS) Answers to One Mark Questions
    UNIT III (RDBMS) Answers To One Mark Questions 1. MySQL is an Open Source Relational Database Management System (RDBMS) that uses Structured Query Language (SQL) for adding, accessing and managing contents in a database. It is available free of cost. 2. “_” (Underscore) is used to represent a single character whereas “%” is used to represent any sequence of zero or more characters. 3. In a table, there can be only one Primary key constraint whereas; it may have more than one unique key constraint. OR Primary key constraint is used to identify a tuple (record) uniquely, cannot be null. Unique key constraint makes sure that duplicate values in a specified column are not accepted, however it may be null. 4. Primary key formed by combining more than one fields is called Composite Key. 5. Degree means number of columns (Attributes/ Fields) in a table. Cardinality means number of rows (Tuples/ Records) in a table. 6. She specified ‘NOT NULL’ constraint for that column while creating the table. 7. Candidate key is a column or group of columns that is suitable to be selected as primary key. A table can have multiple candidate keys but it can have only primary key. Example: Assume a table student having columns AdmNo,Rollno,Name,Address. AdmNo and Rollno are candidate keys, anyone can be selected as primary key. 8. ALTER TABLE command is used to modify the structure of a table. This command falls in DDL category. UPDATE command is used to make changes in the data stored in a table. This command falls in DML category.
    [Show full text]
  • Foreign and Primary Keys in RDM Embedded SQL: Efficiently Implemented Using the Network Model
    TECHNICAL WHITEPAPER Foreign and Primary Keys in RDM Embedded SQL: Efficiently Implemented Using the Network Model By Randy Merilatt, Chief Architect - January 2012 This article is relative to the following versions of RDM: RDM Embedded 10.1 Network model databases have been viewed as strictly non-relational and outdated. But in the 1990s when the SQL standard incorporated support for declared foreign keys to represent inter-table relationships, the gap between the relational and the network model representation of a database narrowed. This was exploited by Raima in RDM Server (RDMs) with the introduction of the create join statement that allowed an SQL foreign and primary key relationship to be explicitly mapped into a network model set. in 2009, when Raima decided to add SQL to RDM Embedded (RDMe) we decided to keep RDMe SQL as simple and as free of as many unnecessary, non-standard extensions as possible. Hence, network model sets are automatically (i.e., implicitly) used in the implementation of foreign and primary key relationships. This paper describes how network model sets are implemented in the RDMe core-level database engine, the syntax and semantics of SQL foreign and primary keys, and why the use of network model sets provides an efficient and high performance implementation for them. The Network Database Model: A Little History The primary data organization mechanism that was provided in some very early database management systems (DBMS) was the ability to declare a one-to-many relationship between a parent record type (table) and a child record type. These systems were known as hierarchical model systems because the data was strictly hierarchically arranged—each child could have only one parent.
    [Show full text]