Relational Model -Keys

Total Page:16

File Type:pdf, Size:1020Kb

Relational Model -Keys Analyze and tell the solution • In real world applications, number of tables required for storing the data is huge, and the different tables are related to each other as well. • Also, tables store a lot of data in them. Tables generally extends to thousands of records stored in them, unsorted and unorganised. • Now to fetch any particular record from such dataset, you will have to apply some conditions, but what if there is duplicate data present and every time you try to fetch some data by applying certain condition, you get the wrong data. How many trials before you get the right data? 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 1/18 Solution • To avoid all this, Keys are defined to easily identify any row of data in a table 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 2 CS8492 DATABASE MANAGEMENT SYSTEMS RELATIONAL MODEL -KEYS P.POOVIZHI AP/IT 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 3/18 Types of Keys 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 4/18 Example – Student Table student_id name phone age 1 Akon 9876723452 17 2 Akon 9991165674 19 3 Bkon 7898756543 18 4 Ckon 8987867898 19 5 Dkon 9990080080 17 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 5/18 Primary key • Primary key is a candidate key that is most appropriate to become the main key for any table. • It is a key that can uniquely identify each record in a table. 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 6/18 Unique key • Unique Key can be a field or set of fields that can be used to uniquely identify the tuple from the database. • One or more fields can be declared as a unique Key. • The unique Key column can also hold the NULL value. • Purpose of Unique key – Use of Unique Key improves the performance of data retrieval. – It makes searching for records from the database much more faster & efficient. • Example: – “cust_aadhaar_number”, “cust_pan_number” are the Unique Key as it can allow one value as a NULL in the column 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 7/18 Candidate Key • Candidate keys are defined as the minimal set of fields which can uniquely identify each record in a table. • It is an attribute or a set of attributes that can act as a Primary Key for a table to uniquely identify each record in that table. • There can be more than one candidate key. • Example – student_id and phone both are candidate keys for table Student. • A candiate key can never be NULL or empty. And its value should be unique. • A candidate key can be a combination of more than one columns(attributes). 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 8/18 Alternate key • Alternate Key is that Key which can be used as a Primary Key if required. • Alternate Key also qualifies to be a Primary Key but for the time being, It is not the Primary Key. • Example – student_id and phone both are alternate keys for table Student 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 9/18 Composite Key • Also known as Compound Key / Concatenated Key. • Key that consists of two or more attributes that uniquely identify any record in a table is called Composite key. • But the attributes which together form the Composite key are not a key independently or individually. 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 10/18 Activity • Memory game in which students are restricted to use certain words during reading comprehension. 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 11 Super Key • Super Key is defined as a set of attributes within a table that can uniquely identify each record within a table. • Super Key is a superset of Candidate key. • Primary Key, Candidate Key & Unique Key is the Super Key • Super key of student table: – student_id, – (student_id, name), – phone etc. • student_id is unique for every row of data, hence it can be used to identity each row uniquely. • (student_id, name), now name of two students can be same, but their student_id can't be same hence this combination can also be a key. • phone number for every student will be unique, hence again, phone can also be a key. • So they all are super keys. 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 12/18 Foreign key • A foreign key is a column which is known as Primary Key in the other table i.e. A Primary Key in a table can be referred to as a Foreign Key in another table. • Foreign Key may have duplicate & NULL values if it is defined to accept NULL values. 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 13/18 Foreign key - Example 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 14/18 Assessment • Consider the example and identify the types of key. Customer Table cust_nam cust_addre cust_aadhaar_nu cust_pan_numb cust_id e ss mber er 100001 Sunil Kumar Noida 372464389211 ADSFS3456K 100002 Ankit Gupta Gr Noida 442289458453 CGHAD7583L Suresh 100003 New Delhi 878453444144 NMKRT2278O Yadav 100004 Nilam Singh Lucknow 227643441123 HFJFD3876U 100005 Amal Rawat Ghaziabad 932571156735 CBMVA9734A Harsh 100006 Kanpur 1453534363319 TRYUC2568H Saxena 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 15/18 Contd…, Order Table cust_id order_month_year order_amount 100001 2019 – Jan $100,000 100002 2019 – Jan $120,000 100003 2019 – Jan $100,000 100004 2019 – Jan $110,000 100001 2019 – Feb $105,000 100002 2019 – Feb $125,000 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 16/18 Solution 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 17/18 Reference • https://www.studytonight.com/dbms/databas e-key.php • https://www.educba.com/sql-keys/ 1/26/2020 CS8492 RELATIONAL MODEL - KEYS 18/18 .
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]