The Impact of Equivalent, Redundant and Quasi Mutants on Database Schema Mutation Analysis. Chris J. Wright Gregory M. Kapfhammer Phil McMinn
|
|
- Everett Bradford
- 6 years ago
- Views:
Transcription
1 The Impact of Equivalent, Redundant and Quasi Mutants on Database Schema Mutation Analysis Chris J. Wright Gregory M. Kapfhammer Phil McMinn
2 The Impact of Equivalent, Redundant and Quasi Mutants on Database Schema Mutation Analysis Chris J. Wright Gregory M. Kapfhammer Phil McMinn
3 The Impact of Equivalent, Redundant and Quasi Mutants on Database Schema Mutation Analysis Chris J. Wright Gregory M. Kapfhammer Phil McMinn
4 The Impact of Equivalent, Redundant and Quasi Mutants on Database Schema Mutation Analysis Chris J. Wright Gregory M. Kapfhammer Phil McMinn
5 The Impact of Equivalent, Redundant and Quasi Mutants on Database Schema Mutation Analysis Chris J. Wright Gregory M. Kapfhammer Phil McMinn
6 The Impact of Equivalent, Redundant and Quasi Mutants on Database Schema Mutation Analysis Chris J. Wright Gregory M. Kapfhammer Phil McMinn
7
8 Database Schema
9 Database Schema 1 CREATE TABLE T ( 2 A CHAR, B CHAR, C CHAR, 3 CONSTRAINT UniqueOnColsAandB UNIQUE (A, B) 4 ); 5 6 CREATE TABLE S ( 7 X CHAR, Y CHAR, Z CHAR, 8 CONSTRAINT RefToColsAandB FOREIGN KEY (X, Y) 9 REFERENCES T (A, B) 10 );
10 Database Schema Tables 1 CREATE TABLE T ( 2 A CHAR, B CHAR, C CHAR, 3 CONSTRAINT UniqueOnColsAandB UNIQUE (A, B) 4 ); 5 6 CREATE TABLE S ( 7 X CHAR, Y CHAR, Z CHAR, 8 CONSTRAINT RefToColsAandB FOREIGN KEY (X, Y) 9 REFERENCES T (A, B) 10 );
11 Database Schema Columns 1 CREATE TABLE T ( 2 A CHAR, B CHAR, C CHAR, 3 CONSTRAINT UniqueOnColsAandB UNIQUE (A, B) 4 ); 5 6 CREATE TABLE S ( 7 X CHAR, Y CHAR, Z CHAR, 8 CONSTRAINT RefToColsAandB FOREIGN KEY (X, Y) 9 REFERENCES T (A, B) 10 );
12 Database Schema Constraints 1 CREATE TABLE T ( 2 A CHAR, B CHAR, C CHAR, 3 CONSTRAINT UniqueOnColsAandB UNIQUE (A, B) 4 ); 5 6 CREATE TABLE S ( 7 X CHAR, Y CHAR, Z CHAR, 8 CONSTRAINT RefToColsAandB FOREIGN KEY (X, Y) 9 REFERENCES T (A, B) 10 );
13 Why Test a Database Schema?
14 Why Test a Database Schema? Database Schema
15 Why Test a Database Schema? Database Schema DBMS
16 Why Test a Database Schema? Database Schema DBMS
17 Why Test a Database Schema? Third Party Application Web Server Database Schema DBMS
18 Why Test a Database Schema? Third Party Application Web Server Database Schema DBMS
19 How to Test a Database Schema
20 How to Test a Database Schema Generate test data SQL INSERT statements
21 How to Test a Database Schema Generate test data SQL INSERT statements INSERT INTO T(a, b) VALUES('a', 'b');
22 How to Test a Database Schema Generate test data SQL INSERT statements INSERT INTO T(a, b) VALUES('a', 'b');
23 How to Test a Database Schema Generate test data SQL Execute the data against the database INSERT INTO T(a, b) VALUES('a', 'b'); DBMS
24 How to Test a Database Schema Generate test data SQL Execute the data against the database Examine the acceptance of statements / INSERT INTO T(a, b) VALUES('a', 'b'); DBMS
25 Mutation Analysis
26 Application Mutation Analysis
27 Mutation Analysis Application Mutation Operators
28 Mutation Analysis Application Mutation Operators Mutants
29 Mutation Analysis Application Mutation Operators Mutants Test suite
30 Mutation Analysis Application Mutation Operators Mutants Test suite Test results
31 Mutation Analysis Application Mutation Operators Mutants Test suite Test suite Test results
32 Mutation Analysis Application Mutation Operators Mutants Test suite Test suite Test results Test results
33 Mutation Analysis Application Mutation Operators Mutants Test suite Test suite Test results Comparison Test results
34 Mutation Analysis Application Mutation Operators Mutants Test suite Test suite Test results Comparison Test results Mutation Score
35 Mutation Analysis Mutation Operators Application Mutants Test suite Test suite Test results Comparison Test results Mutation Score
36 Database Schema Mutation Operators
37 Database Schema Mutation Operators Primary Key Foreign Key Unique Not Null Check
38 Database Schema Mutation Operators Primary Key Foreign Key Unique Not Null Check
39 Database Schema Mutation Operators Primary Key Column Addition Foreign Key Unique Not Null Check
40 Database Schema Mutation Operators Primary Key Foreign Key Unique Column Addition Column Removal Not Null Check
41 Database Schema Mutation Operators Primary Key Foreign Key Unique Not Null Column Addition Column Removal Column Exchange Check
42 Database Schema Mutation Operators
43 Database Schema Mutation Operators Primary Key Column Addition
44 Database Schema Mutation Operators Primary Key Column Addition 1 CREATE TABLE T ( 2 A CHAR, B CHAR, 3 PRIMARY KEY (A) 4 );
45 Database Schema Mutation Operators Primary Key Column Addition 1 CREATE TABLE T ( 2 A CHAR, B CHAR, 3 PRIMARY KEY (A) 4 ); 1 CREATE TABLE T ( 2 A CHAR, B CHAR, 3 PRIMARY KEY (A, B) 4 );
46 Database Schema Mutation Operators Primary Key Column Exchange 1 CREATE TABLE T ( 2 A CHAR, B CHAR, 3 PRIMARY KEY (A) 4 ); 1 CREATE TABLE T ( 2 A CHAR, B CHAR, 3 PRIMARY KEY (B) 4 );
47 Database Schema Mutation Operators Primary Key Column Removal 1 CREATE TABLE T ( 2 A CHAR, B CHAR, 3 PRIMARY KEY (A) 4 ); 1 CREATE TABLE T ( 2 A CHAR, B CHAR, 3 4 );
48 Mutation Analysis Challenges
49 Mutation Analysis Challenges Special classes of mutants
50 Mutation Analysis Challenges Special classes of mutants Equivalent
51 Mutation Analysis Challenges Special classes of mutants Equivalent Redundant
52 Mutation Analysis Challenges Special classes of mutants Equivalent Redundant Quasi-mutants
53 Mutation Analysis Challenges Special classes of mutants Equivalent Redundant Quasi-mutants
54 Equivalent Mutants
55 Equivalent Mutants Functionally identical to non-mutant
56 Equivalent Mutants Functionally identical to non-mutant but syntactically different
57 Equivalent Mutants Functionally identical to non-mutant but syntactically different Cannot be killed
58 Equivalent Mutants Functionally identical to non-mutant but syntactically different Cannot be killed Artificially decrease mutation score
59 Equivalent Mutants Functionally identical to non-mutant but syntactically different Cannot be killed Artificially decrease mutation score
60 Equivalent Mutants
61 Equivalent Mutants Original: 1 CREATE TABLE T ( 2 A CHAR, 3 PRIMARY KEY (A) 4 );
62 Equivalent Mutants Original: 1 CREATE TABLE T ( 2 A CHAR, 3 PRIMARY KEY (A) 4 ); Mutant: 1 CREATE TABLE T ( 2 A CHAR NOT NULL, 3 PRIMARY KEY (A) 4 );
63 Redundant Mutants
64 Redundant Mutants Functionally identical to another mutant
65 Redundant Mutants Functionally identical to but syntactically different
66 Redundant Mutants Functionally identical to but syntactically different May be killed
67 Redundant Mutants Functionally identical to but syntactically different May be killed Artificially alters mutation score
68 Redundant Mutants Functionally identical to but syntactically different May be killed Artificially alters mutation score Reduces efficiency
69 Redundant Mutants Functionally identical to but syntactically different May be killed Artificially alters mutation score Reduces efficiency
70 Types of Equivalence
71 Structural Types of Equivalence
72 Types of Equivalence Structural Functionally irrelevant syntactic differences
73 Types of Equivalence Structural Functionally irrelevant syntactic differences
74 Types of Equivalence Structural Functionally irrelevant syntactic differences Behavioural
75 Types of Equivalence Structural Functionally irrelevant syntactic differences Behavioural Overlap within SQL features
76 Types of Equivalence Structural Functionally irrelevant syntactic differences Behavioural Overlap within SQL features
77 Behavioural Equivalence Patterns
78 Behavioural Equivalence Patterns NOT NULL in CHECK constraints NOT NULL CHECK( IS NOT NULL)
79 Behavioural Equivalence Patterns NOT NULL in CHECK constraints NOT NULL CHECK( IS NOT NULL) 1 CREATE TABLE T ( 2 A CHAR NOT NULL, 3 ); 1 CREATE TABLE T ( 2 A CHAR, 3 CHECK(A IS NOT NULL) 4 );
80 Behavioural Equivalence Patterns
81 Behavioural Equivalence Patterns NOT NULL on PRIMARY KEY columns
82 Behavioural Equivalence Patterns NOT NULL on PRIMARY KEY columns Implicit NOT NULL on PRIMARY KEY
83 Behavioural Equivalence Patterns NOT NULL on PRIMARY KEY columns Implicit NOT NULL on PRIMARY KEY (Only PostgreSQL and HyperSQL)
84 Behavioural Equivalence Patterns NOT NULL on PRIMARY KEY columns
85 Behavioural Equivalence Patterns NOT NULL on PRIMARY KEY columns 1 CREATE TABLE T ( 2 A CHAR, 3 PRIMARY KEY (A) 4 ); 1 CREATE TABLE T ( 2 A CHAR NOT NULL, 3 PRIMARY KEY (A) 4 );
86 Behavioural Equivalence Patterns
87 Behavioural Equivalence Patterns UNIQUE and PRIMARY KEY with shared columns
88 Behavioural Equivalence Patterns UNIQUE and PRIMARY KEY with shared columns 1 CREATE TABLE T ( 2 A CHAR, 3 PRIMARY KEY (A) 4 ); 1 CREATE TABLE T ( 2 A CHAR, 3 PRIMARY KEY (A), 4 UNIQUE (A) 5 );
89 Quasi-mutants
90 Quasi-mutants Operators produce DBMS-agnostic mutants
91 Quasi-mutants Operators produce DBMS-agnostic mutants Some DBMSs have implicit constraints
92 Quasi-mutants Operators produce DBMS-agnostic mutants Some DBMSs have implicit constraints Valid for some DBMSs, invalid for others PostgreSQL HyperSQL SQLite
93 Quasi-mutants Operators produce DBMS-agnostic mutants Some DBMSs have implicit constraints Valid for some DBMSs, invalid for others PostgreSQL HyperSQL SQLite
94 Quasi-mutants PostgreSQL HyperSQL SQLite
95 Quasi-mutants Cannot adversely affect mutation score PostgreSQL HyperSQL SQLite
96 Quasi-mutants Cannot adversely affect mutation score but may preclude some optimisations PostgreSQL HyperSQL SQLite
97 Quasi-mutants Cannot adversely affect mutation score but may preclude some optimisations Remove when DBMS will reject them SQLite PostgreSQL HyperSQL
98 Types of Quasi-mutants
99 Types of Quasi-mutants Representative example
100 Types of Quasi-mutants Representative example DBMS: PostgreSQL, HyperSQL
101 Types of Quasi-mutants Representative example DBMS: PostgreSQL, HyperSQL FK(reference columns) (PK(reference columns) Unique(reference columns))
102 Types of Quasi-mutants Representative example DBMS: PostgreSQL, HyperSQL FK(reference columns) (PK(reference columns) Unique(reference columns))
103 Types of Quasi-mutants Representative example DBMS: PostgreSQL, HyperSQL FK(reference columns) (PK(reference columns) Unique(reference columns))
104 Types of Quasi-mutants Representative example DBMS: PostgreSQL, HyperSQL FK(reference columns) (PK(reference columns) Unique(reference columns))
105 Types of Quasi-mutants Representative example DBMS: PostgreSQL, HyperSQL FK(reference columns) (PK(reference columns) Unique(reference columns))
106 Types of Quasi-mutants Representative example DBMS: PostgreSQL, HyperSQL (PK(reference columns) Unique(reference
107 Detecting Quasi-mutants
108 Detecting Quasi-mutants Submit to DBMS
109 Detecting Quasi-mutants Submit to DBMS 100% accurate
110 Detecting Quasi-mutants Submit to DBMS 100% accurate Convert representation to SQL, submit to database, inspect response
111 Detecting Quasi-mutants Submit to DBMS 100% accurate Convert representation to SQL, submit to database, inspect response Analyse statically
112 Detecting Quasi-mutants Submit to DBMS 100% accurate Convert representation to SQL, submit to database, inspect response Analyse statically Operates directly on representation
113 Detecting Quasi-mutants Submit to DBMS 100% accurate Convert representation to SQL, submit to database, inspect response Analyse statically Operates directly on representation DBMS-specific implementation
114 Empirical Study
115 Empirical Study 1. Quasi-mutant detection DBMS v Static Analysis
116 Empirical Study 1. Quasi-mutant detection DBMS v Static Analysis 2. Equivalent, Redundant and Quasi-mutant removal Efficiency?
117 Empirical Study 1. Quasi-mutant detection DBMS v Static Analysis 2. Equivalent, Redundant and Quasi-mutant removal Efficiency? 3. Equivalent, Redundant and Quasi-mutant removal Effectiveness?
118 Empirical Study
119 16 schemas Empirical Study
120 Empirical Study 16 schemas 2 DBMSs PostgreSQL, HyperSQL
121 Empirical Study 16 schemas 2 DBMSs PostgreSQL, HyperSQL 15 repeat trials
122 Empirical Study 16 schemas 2 DBMSs PostgreSQL, HyperSQL 15 repeat trials
123 Empirical Study Quasi-mutants
124 Empirical Study Quasi-mutants 5 conditions:
125 Empirical Study Quasi-mutants 5 conditions: Postgres (with/without transactions)
126 Empirical Study Quasi-mutants 5 conditions: Postgres (with/without transactions) HyperSQL (with/without transactions)
127 Empirical Study Quasi-mutants 5 conditions: Postgres (with/without transactions) HyperSQL (with/without transactions) Static analysis
128 Empirical Study Quasi-mutants 5 conditions: Postgres (with/without transactions) HyperSQL (with/without transactions) Static analysis
129 Empirical Study Quasi-mutants Scaled Time Taken HyperSQL HyperSQL Trans. Postgres Approach Postgres Trans. Static
130 Empirical Study Mutant Removal
131 Empirical Study Mutant Removal 2 conditions with and without removal
132 Empirical Study Mutant Removal 2 conditions with and without removal 2 metrics
133 Empirical Study Mutant Removal 2 conditions with and without removal 2 metrics Time taken for mutation analysis
134 Empirical Study Mutant Removal 2 conditions with and without removal 2 metrics Time taken for mutation analysis Mutation score
135 Empirical Study Mutant Removal
136 Empirical Study Mutant Removal HyperSQL Time saved Best case: 718ms (23.05%) Worst case: -824ms (-9.71%)
137 Empirical Study Mutant Removal
138 Empirical Study Mutant Removal HyperSQL Time saved
139 Empirical Study Mutant Removal HyperSQL Time saved 9/16 mean time decrease (p < 0.05)
140 Empirical Study Mutant Removal HyperSQL Time saved 9/16 mean time decrease ( 7/16 mean time increase (p < 0.05)
141 Empirical Study Mutant Removal HyperSQL Time saved 9/16 mean time decrease ( 7/16 mean time increase ( Overall, decrease (1.6% mean, 1.4% median)
142 Empirical Study Mutant Removal
143 Empirical Study Mutant Removal PostgreSQL Time saved Best case: 317,208ms (33.71%) Worst case: -3,086ms, (-0.33%)
144 Empirical Study Mutant Removal
145 Empirical Study Mutant Removal PostgreSQL Time saved
146 Empirical Study Mutant Removal PostgreSQL Time saved 14/16 mean time decrease (p < 0.05)
147 Empirical Study Mutant Removal PostgreSQL Time saved 14/16 mean time decrease ( 2/16 mean time increase (p < 0.05)
148 Empirical Study Mutant Removal PostgreSQL Time saved 14/16 mean time decrease ( 2/16 mean time increase ( Overall, decrease (12.7% mean, 11.8% median)
149 Empirical Study Mutant Removal DBMS Median Time saved (ms) Mean
150 Empirical Study Mutant Removal DBMS Median Time saved (ms) Mean HyperSQL
151 Empirical Study Mutant Removal DBMS Median Time saved (ms) Mean HyperSQL Postgres 8,071 50,880
152 Empirical Study Mutant Removal DBMS Median Time saved (ms) Mean HyperSQL Postgres 8,071 50,880 Both ,450
153 Empirical Study Mutant Removal DBMS Median Time saved (%) Mean HyperSQL Postgres Both
154 Empirical Study Mutant Removal
155 Empirical Study Mutant Removal HyperSQL Mutation score 75% Increased 44% Adequate 25% No change
156 Empirical Study Mutant Removal PostgreSQL Mutation score 75% Increased 44% Adequate 25% No change
157 Empirical Study Mutant Removal DBMS Increased (adequate) Scores changed (%) No change HyperSQL 75 (44) 25 Postgres 75 (44) 25 Both 75 (44) 25
158 Conclusion 1. Quasi-mutant detection DBMS v Static Analysis 2. Equivalent, Redundant and Quasi-mutant removal Efficiency? 3. Equivalent, Redundant and Quasi-mutant removal Effectiveness?
159 Conclusion 1. Quasi-mutant detection DBMS v Static Analysis 2. Equivalent, Redundant and Quasi-mutant removal Efficiency? 3. Equivalent, Redundant and Quasi-mutant removal Effectiveness?
160 Conclusion 1. Quasi-mutant detection DBMS v Static Analysis 2. Equivalent, Redundant and Quasi-mutant removal Efficiency? 3. Equivalent, Redundant and Quasi-mutant removal Effectiveness?
161 Conclusion 1. Quasi-mutant detection Improved efficiency 2. Equivalent, Redundant and Quasi-mutant removal Improved efficiency 3. Equivalent, Redundant and Quasi-mutant removal Improved effectiveness
162 Conclusion 1. Quasi-mutant detection Improved efficiency 2. Equivalent, Redundant and Quasi-mutant removal Improved efficiency 3. Equivalent, Redundant and Quasi-mutant removal Improved effectiveness Chris J. Wright
Mutation Analysis of Relational Database Schemas
Mutation Analysis of Relational Database Schemas Chris J. Wright Supervisor: Phil McMinn External Advisor: Gregory Kapfhammer A thesis submitted in partial fulfilment of the requirements for the degree
More informationThis is a repository copy of Virtual Mutation Analysis of Relational Database Schemas.
This is a repository copy of Virtual Mutation Analysis of Relational Database Schemas. White Rose Research Online URL for this paper: http://eprints.whiterose.ac.uk/96265/ Version: Accepted Version Proceedings
More informationEfficient Mutation Analysis of Relational Database Structure Using Mutant Schemata and Parallelisation
Efficient Mutation Analysis of Relational Database Structure Using Mutant and Parallelisation Chris J. Wright Department of Computer Science University of Sheffield Gregory M. Kapfhammer Department of
More informationThe Effectiveness of Test Coverage Criteria for Relational Database Schema Integrity Constraints
The Effectiveness of Test Coverage Criteria for Relational Database Schema Integrity Constraints PHIL MCMINN and CHRIS J. WRIGHT, University of Sheffield GREGORY M. KAPFHAMMER, Allegheny College Despite
More informationA The Effectiveness of Test Coverage Criteria for Relational Database Schema Integrity Constraints
A The Effectiveness of Test Coverage Criteria for Relational Database Schema Integrity Constraints PHIL MCMINN, University of Sheffield, UK CHRIS J. WRIGHT, University of Sheffield, UK GREGORY M. KAPFHAMMER,
More informationCS W Introduction to Databases Spring Computer Science Department Columbia University
CS W4111.001 Introduction to Databases Spring 2018 Computer Science Department Columbia University 1 in SQL 1. Key constraints (PRIMARY KEY and UNIQUE) 2. Referential integrity constraints (FOREIGN KEY
More informationChapter Five Physical Database Design
Chapter Five Physical Database Design 1 Objectives Understand Purpose of physical database design Describe the physical database design process Choose storage formats for attributes Describe indexes and
More informationOracle Schema Create Date Index Trunc >>>CLICK HERE<<<
Oracle Schema Create Date Index Trunc Changes in This Release for Oracle Database SQL Language Reference. open References to Partitioned Tables and Indexes References to Object Type Attributes and Methods
More informationAutomatic Detection of Potential Layout Faults in Responsive Web Pages
Thomas A. Walsh*, Phil McMinn* and Gregory M. Kapfhammer + University of Sheffield*, Allegheny College + www.thomaswalsh.co.uk The Web - Past and Present https://blog.pivotal.io/labs/labs/an-introduction-to-qa-at-xtreme-labs
More informationCSE 530A. Inheritance and Partitioning. Washington University Fall 2013
CSE 530A Inheritance and Partitioning Washington University Fall 2013 Inheritance PostgreSQL provides table inheritance SQL defines type inheritance, PostgreSQL's table inheritance is different A table
More informationDatabase Migration Assessment (DMA)
Database Migration Assessment (DMA) A compatibility analysis for deploying Oracle schema, , on EnterpriseDB Postgres Plus Advanced Server. Copyright 2014 EnterpriseDB Corporation.
More informationMTAT : Software Testing
MTAT.03.159: Software Testing Lecture 04: Static Analysis (Inspection) and Defect Estimation, Mutation Testing (Textbook Ch. 10 & 12) Spring 2015 Dietmar Pfahl email: dietmar.pfahl@ut.ee Structure of Lecture
More informationData Base Concepts. Course Guide 2
MS Access Chapter 1 Data Base Concepts Course Guide 2 Data Base Concepts Data The term data is often used to distinguish binary machine-readable information from textual human-readable information. For
More informationThe DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data.
Managing Data Data storage tool must provide the following features: Data definition (data structuring) Data entry (to add new data) Data editing (to change existing data) Querying (a means of extracting
More informationMAJOR: An Efficient and Extensible Tool for Mutation Analysis in a Java Compiler
MAJOR: An Efficient and Extensible Tool for Mutation Analysis in a Java Compiler René Just 1, Franz Schweiggert 1, and Gregory M. Kapfhammer 2 1 Ulm University, Germany 2 Allegheny College, USA 26th International
More informationIndex. Bitmap Heap Scan, 156 Bitmap Index Scan, 156. Rahul Batra 2018 R. Batra, SQL Primer,
A Access control, 165 granting privileges to users general syntax, GRANT, 170 multiple privileges, 171 PostgreSQL, 166 169 relational databases, 165 REVOKE command, 172 173 SQLite, 166 Aggregate functions
More informationInformation Systems Engineering. SQL Structured Query Language DDL Data Definition (sub)language
Information Systems Engineering SQL Structured Query Language DDL Data Definition (sub)language 1 SQL Standard Language for the Definition, Querying and Manipulation of Relational Databases on DBMSs Its
More informationThe Relational Model. Relational Data Model Relational Query Language (DDL + DML) Integrity Constraints (IC)
The Relational Model Relational Data Model Relational Query Language (DDL + DML) Integrity Constraints (IC) Why Study the Relational Model? Most widely used model in Commercial DBMSs: Vendors: IBM, Microsoft,
More informationPostgreSQL Database and C++ Interface (and Midterm Topics) ECE 650 Systems Programming & Engineering Duke University, Spring 2018
PostgreSQL Database and C++ Interface (and Midterm Topics) ECE 650 Systems Programming & Engineering Duke University, Spring 2018 PostgreSQL Also called Postgres Open source relational database system
More informationWhere Are We? Next Few Lectures. Integrity Constraints Motivation. Constraints in E/R Diagrams. Keys in E/R Diagrams
Where Are We? Introduction to Data Management CSE 344 Lecture 15: Constraints We know quite a bit about using a DBMS Start with real-world problem, design ER diagram From ER diagram to relations -> conceptual
More informationECE 650 Systems Programming & Engineering. Spring 2018
ECE 650 Systems Programming & Engineering Spring 2018 PostgreSQL Database and C++ Interface Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) Also called Postgres Open source relational
More informationEffectual Mutation Analysis of Relational Database using Minimal Schemata with Parallelization
Effectual Mutation Analysis of Relational Database using Minimal Schemata with Parallelization Thesis submitted in partial fulfillment of the requirements for the award of degree of Master of Technology
More informationChapter 1 SQL and Data
Chapter 1 SQL and Data What is SQL? Structured Query Language An industry-standard language used to access & manipulate data stored in a relational database E. F. Codd, 1970 s IBM 2 What is Oracle? A relational
More informationWhite Box Testing III
White Box Testing III Outline Today we continue our look at white box testing methods, with mutation testing We will look at : definition and role of mutation testing what is a mutation? how is mutation
More informationWhat is Mutation Testing? Mutation Testing. Test Case Adequacy. Mutation Testing. Mutant Programs. Example Mutation
What is Mutation Testing? Mutation Testing Breaking the application to test it n Mutation Testing is a testing technique that focuses on measuring the adequacy of test cases n Mutation Testing is NOT a
More informationGrading Schemas. Blackboard Learn Grade Center
Grading Schemas Blackboard Learn Grade Center Creating a Grading Schema... 1 Editing a Grading Schema... 3 Deleting a Grading Schema... 4 Copying a Grading Schema... 5 Assigning a Grading Schema to a Grade
More informationCS157a Fall 2018 Sec3 Home Page/Syllabus
CS157a Fall 2018 Sec3 Home Page/Syllabus Introduction to Database Management Systems Instructor: Chris Pollett Office: MH 214 Phone Number: (408) 924 5145 Email: chris@pollett.org Office Hours: MW 4:30-5:45pm
More informationUpdate Table Schema Sql Server 2008 Add Column Default Value
Update Table Schema Sql Server 2008 Add Column Default Value In SQL Server 2008, I am adding a non-nullable column to an existing table, and INTO MyTable DEFAULT VALUES GO 1000 ALTER TABLE MyTable ADD.
More informationComparative Assessment of Testing and Model Checking Using Program Mutation
Comparative Assessment of Testing and Using Mutation Research Talk Jeremy S. Bradbury, James R. Cordy, Juergen Dingel School of Computing! Queen s University Kingston! Ontario! Canada {bradbury, cordy,
More informationIntroduction to Software Testing Chapter 5.1 Syntax-based Testing
Introduction to Software Testing Chapter 5.1 Syntax-based Testing Paul Ammann & Jeff Offutt http://www.cs.gmu.edu/~offutt/ softwaretest/ Ch. 5 : Syntax Coverage Four Structures for Modeling Software Graphs
More informationCSIT115/CSIT815 Data Management and Security Assignment 2
School of Computing and Information Technology Session: Autumn 2016 University of Wollongong Lecturer: Janusz R. Getta CSIT115/CSIT815 Data Management and Security Assignment 2 Scope This assignment consists
More informationCS 250 Databases and DBMSs. Benjamin Dicken
CS 250 Databases and DBMSs Benjamin Dicken Databases and DBMSs The word database is thrown around a lot, but it is often misused When learning about databases it is important to distinguish between a database
More informationDatabase Modifications and Transactions
Database Modifications and Transactions FCDB 6.5 6.6 Dr. Chris Mayfield Department of Computer Science James Madison University Jan 31, 2018 pgadmin from home (the easy way) 1. Connect to JMU s network
More informationFull file at
SQL for SQL Server 1 True/False Questions Chapter 2 Creating Tables and Indexes 1. In order to create a table, three pieces of information must be determined: (1) the table name, (2) the column names,
More informationCarnegie Mellon Univ. Dept. of Computer Science Database Applications. Outline. We ll learn: Faloutsos CMU SCS
Faloutsos 15-415 Carnegie Mellon Univ. Dept. of Computer Science 15-415 - Database Applications C. Faloutsos Lecture#1: Introduction Outline Introduction to DBMSs The Entity Relationship model The Relational
More informationDatabases and SQL programming overview
Databases and SQL programming overview Databases: Digital collections of data A database system has: Data + supporting data structures The management system (DBMS) Popular DBMS Commercial: Oracle, IBM,
More informationAnnouncements. Outline UNIQUE. (Inner) joins. (Inner) Joins. Database Systems CSE 414. WQ1 is posted to gradebook double check scores
Announcements Database Systems CSE 414 Lectures 4: Joins & Aggregation (Ch. 6.1-6.4) WQ1 is posted to gradebook double check scores WQ2 is out due next Sunday HW1 is due Tuesday (tomorrow), 11pm HW2 is
More informationCPS510 Database System Design Primitive SYSTEM STRUCTURE
CPS510 Database System Design Primitive SYSTEM STRUCTURE Naïve Users Application Programmers Sophisticated Users Database Administrator DBA Users Application Interfaces Application Programs Query Data
More informationIntroduction to Database Systems CSE 414
Introduction to Database Systems CSE 414 Lecture 16: Constraints CSE 414 - Spring 2015 1 Announcements Reminders: Web quiz due Monday night XML homework due Wednesday night Today: Constraints (7.1, 7.2,
More informationComp 5311 Database Management Systems. 4b. Structured Query Language 3
Comp 5311 Database Management Systems 4b. Structured Query Language 3 1 SQL as Data Definition Language Creates the Students relation. The type (domain) of each field is specified, and enforced by the
More informationThe Relational Model
The Relational Model What is the Relational Model Relations Domain Constraints SQL Integrity Constraints Translating an ER diagram to the Relational Model and SQL Views A relational database consists
More informationModule Contact: Dr Beatriz de la Iglesia, CMP Copyright of the University of East Anglia Version 1
UNIVERSITY OF EAST ANGLIA School of Computing Sciences Main Series UG Examination 2015-16 DATABASE SYSTEMS CMP-4010B / CMP-5038B Time allowed: 3 hours Answer THREE questions out of FIVE. All questions
More informationIntroduction to Information Systems
Table of Contents 1... 2 1.1 Introduction... 2 1.2 Architecture of Information systems... 2 1.3 Classification of Data Models... 4 1.4 Relational Data Model (Overview)... 8 1.5 Conclusion... 12 1 1.1 Introduction
More informationCS275 Intro to Databases
CS275 Intro to Databases The Relational Data Model Chap. 3 How Is Data Retrieved and Manipulated? Queries Data manipulation language (DML) Retrieval Add Delete Update An Example UNIVERSITY database Information
More informationAdministrivia. The Relational Model. Review. Review. Review. Some useful terms
Administrivia The Relational Model Ramakrishnan & Gehrke Chapter 3 Homework 0 is due next Thursday No discussion sections next Monday (Labor Day) Enrollment goal ~150, 118 currently enrolled, 47 on the
More informationCSE 344 MAY 14 TH ENTITIES
CSE 344 MAY 14 TH ENTITIES EXAMS Scores Final grades Concerned? Email about meeting Final Exam 35% of grade ADMINISTRIVIA HW6 Due Wednesday OQ6 Out Wednesday HW7 Out Wednesday E/R + Normalization DATABASE
More informationTutorial 1 Database: Introductory Topics
Tutorial 1 Database: Introductory Topics Theory Reference: Rob, P. & Coronel, C. Database Systems: Design, Implementation & Management, 6th Edition, 2004, Chapter 1. Review Questions 2 7, 9 10. Problems
More informationDATABASES SQL INFOTEK SOLUTIONS TEAM
DATABASES SQL INFOTEK SOLUTIONS TEAM TRAINING@INFOTEK-SOLUTIONS.COM Databases 1. Introduction in databases 2. Relational databases (SQL databases) 3. Database management system (DBMS) 4. Database design
More informationEnterprise Architect. User Guide Series. Database Models. Author: Sparx Systems. Date: 19/03/2018. Version: 1.0 CREATED WITH
Enterprise Architect User Guide Series Database Models Author: Sparx Systems Date: 19/03/2018 Version: 1.0 CREATED WITH Table of Contents Database Models Data Modeling Overview Conceptual Data Model Logical
More informationSQL language. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)
SQL language Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c) 2011-2016 SQL - Structured Query Language SQL is a computer language for communicating with DBSM Nonprocedural (declarative) language What
More informationMechanisms for Database Intrusion Detection and Response. Michael Sintim - Koree SE 521 March 6, 2013.
Mechanisms for Database Intrusion Detection and Response Michael Sintim - Koree SE 521 March 6, 2013. Article Title: Mechanisms for Database Intrusion Detection and Response Authors: Ashish Kamra, Elisa
More information10 Database Design 1
10 Database Design 1 Objectives Discuss the general process and goals of database design Define user views and explain their function Define Database Design Language (DBDL) and use it to document database
More informationElephantSQL. PostgreSQL as a Service. Product overview. Last Updated
ElephantSQL PostgreSQL as a Service Product overview Table of Contents...1 ElephantSQL...3 PostgreSQL as a Service...3 What is PostgreSQL?...3 Product overview...4 Product Details...4 SQL Browser...4 Other
More informationChapter 1: Introduction
Chapter 1: Introduction Chapter 2: Intro. To the Relational Model Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Database Management System (DBMS) DBMS is Collection of
More informationHow to Recover a Primavera P6 Password
How to Recover a Primavera P6 Password The answer to this problem depends on what type of database you are connecting to. Take a look at the two options below to see which one pertains to you. Error: Invalid
More informationRelation Databases. By- Neha Tyagi PGT CS KV 5 Jaipur II Shift Jaipur Region. Based on CBSE Curriculum Class -11. Neha Tyagi, PGT CS II Shift Jaipur
Relation Databases Based on CBSE Curriculum Class -11 By- Neha Tyagi PGT CS KV 5 Jaipur II Shift Jaipur Region Neha Tyagi, PGT CS II Shift Jaipur Introduction A Database System is basically a record keeping
More informationThe Relational Model. Chapter 3. Comp 521 Files and Databases Fall
The Relational Model Chapter 3 Comp 521 Files and Databases Fall 2014 1 Why the Relational Model? Most widely used model by industry. IBM, Informix, Microsoft, Oracle, Sybase, MySQL, Postgres, Sqlite,
More informationCS 250 SQL and SQLite. Benjamin Dicken
CS 250 SQL and SQLite Benjamin Dicken SQL SQL (Structured Query Language) is a programming language designed for managing schema and data held in a relational database management system (RDBMS) SQLite
More informationModule 9: Managing Schema Objects
Module 9: Managing Schema Objects Overview Naming guidelines for identifiers in schema object definitions Storage and structure of schema objects Implementing data integrity using constraints Implementing
More informationHCW Human Centred Web. HuCEL: Keywords Experiment Manual. School of Computer Science. Information Management Group
HCW HuCEL Technical Report 1, June 2009 School of Computer Science Information Management Group HuCEL: Keywords Experiment Manual Paul Waring Human Centred Web Lab School of Computer Science University
More informationCarnegie Mellon University in Qatar Spring Problem Set 4. Out: April 01, 2018
Carnegie Mellon University in Qatar 15415 - Spring 2018 Problem Set 4 Out: April 01, 2018 Due: April 11, 2018 1 1 B + External Sorting [20 Points] Suppose that you just nished inserting several records
More informationCourse Details Duration: 3 days Starting time: 9.00 am Finishing time: 4.30 pm Lunch and refreshments are provided.
Database Administration with PostgreSQL Introduction This is a 3 day intensive course in skills and methods for PostgreSQL. Course Details Duration: 3 days Starting time: 9.00 am Finishing time: 4.30 pm
More informationTest data augmentation : generating new test data from existing test data
Test data augmentation : generating new test data from existing test data Technical Report : TR-8-4 Shin Yoo & Mark Harman Department of Computer Science Centre for Research on Evolution, Search & Testing
More informationCreating Tables, Defining Constraints. Rose-Hulman Institute of Technology Curt Clifton
Creating Tables, Defining Constraints Rose-Hulman Institute of Technology Curt Clifton Outline Data Types Creating and Altering Tables Constraints Primary and Foreign Key Constraints Row and Tuple Checks
More informationSQL: Concepts. Todd Bacastow IST 210: Organization of Data 2/17/ IST 210
SQL: Concepts Todd Bacastow IST 210: Organization of Data 2/17/2004 1 Design questions How many entities are there? What are the major entities? What are the attributes of each entity? Is there a unique
More informationCarnegie Mellon Univ. Dept. of Computer Science /615 - DB Applications
Carnegie Mellon Univ. Dept. of Computer Science 15-415/615 - DB Applications C. Faloutsos A. Pavlo Lecture#1: Introduction Outline Introduction to DBMSs The Entity Relationship model The Relational Model
More informationCSE 344 AUGUST 1 ST ENTITIES
CSE 344 AUGUST 1 ST ENTITIES EXAMS Will hand back after class Quartiles 1 0 67 2 68 74 3 74 82 4 82 100 (no one actually got 0 or 100) ADMINISTRIVIA HW6 due Wednesday Spark SQL interface much easier to
More informationCOMM 391. Objectives. Introduction to Microsoft Access. What is in an Access database file? Introduction to Microsoft Access 2010
Objectives COMM 391 Introduction to Management Information Systems Introduction to Microsoft Access 2010 Describe the major objects in Access database. Define field, record, table and database. Navigate
More informationOracle Create Table Foreign Key On Delete No
Oracle Create Table Foreign Key On Delete No Action Can I create a foreign key against only part of a composite primary key? For example, if you delete a row from the ProductSubcategory table, it could
More informationPractice and Applications of Data Management CMPSCI 345. Lecture 13: Transactions
Practice and Applications of Data Management CMPSCI 345 Lecture 3: Transactions Transactions } Problem: An applica0on must perform several writes and reads to the database, as a unit. } Example: Two people
More information(Tests = 40%) + (Assignments = 40%) + (Participation = 20%) = (Quarter Final Grade)
Weighted Column GRADE CENTER The weighted column is a type of calculated column that generates a grade based on the result of selected columns and categories, and their respective percentages. A weighted
More informationDatabase Management Systems Introduction to DBMS
Database Management Systems Introduction to DBMS D B M G 1 Introduction to DBMS Data Base Management System (DBMS) A software package designed to store and manage databases We are interested in internal
More informationQuerying Microsoft SQL Server (461)
Querying Microsoft SQL Server 2012-2014 (461) Create database objects Create and alter tables using T-SQL syntax (simple statements) Create tables without using the built in tools; ALTER; DROP; ALTER COLUMN;
More informationCS448 Designing and Implementing a Mini Relational DBMS
CS448 Designing and Implementing a Mini Relational DBMS Credit: 20 points Due Date: Midnight of April 2, 2014 without any penalties. The last day to submit the program is April 9, 2014 with 1 point penalty
More informationThe Relational Model of Data (ii)
ICS 321 Fall 2013 The Relational Model of Data (ii) Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 1 Defining Relational Schema in SQL Two aspects: Data
More informationIntroduction to Data Management CSE 344
Introduction to Data Management CSE 344 Lecture 16: Constraints CSE 344 - Fall 2014 1 Announcements Sections tomorrow: XML. Quiz and next HW on XML posted soon, due next week after midterm HW 4 due tomorrow
More informationCarnegie Mellon Univ. Dept. of Computer Science /615 - DB Applications. Outline. We ll learn: Faloutsos/Pavlo CMU /615
Carnegie Mellon Univ. Dept. of Computer Science 15-415/615 - DB Applications C. Faloutsos A. Pavlo Lecture#1: Introduction Outline Introduction to DBMSs The Entity Relationship model The Relational Model
More informationOutline. Carnegie Mellon Univ. Dept. of Computer Science /615 - DB Applications. We ll learn: We ll learn (cnt d) Faloutsos/Pavlo CMU /615
Carnegie Mellon Univ. Dept. of Computer Science 15-415/615 - DB Applications C. Faloutsos A. Pavlo Lecture#1: Introduction Introduction to DBMSs Outline The Entity Relationship model The Relational Model
More informationUNIT 4 DATABASE SYSTEM CATALOGUE
UNIT 4 DATABASE SYSTEM CATALOGUE Database System Structure Page Nos. 4.0 Introduction 65 4.1 Objectives 66 4.2 for Relational Database Management System 66 4.3 Data Dictionary and Data Repository System
More informationManual Trigger Sql Server Example Update Column Value
Manual Trigger Sql Server Example Update Column Value Is it possible to check a column value, then before insert or update change can you direct me to a simple tutorial for trigger, user3400838 Jun 30
More informationDS Introduction to SQL Part 2 Multi-table Queries. By Michael Hahsler based on slides for CS145 Introduction to Databases (Stanford)
DS 1300 - Introduction to SQL Part 2 Multi-table Queries By Michael Hahsler based on slides for CS145 Introduction to Databases (Stanford) What you will learn about in this section 1. Foreign key constraints
More information(Extended) Entity Relationship
03 - Database Design, UML and (Extended) Entity Relationship Modeling CS530 Database Architecture Models and Design Prof. Ian HORROCKS Dr. Robert STEVENS In this Section Topics Covered Database Design
More informationSQL: A COMMERCIAL DATABASE LANGUAGE. Complex Constraints
SQL: A COMMERCIAL DATABASE LANGUAGE Complex Constraints Outline 1. Introduction 2. Data Definition, Basic Constraints, and Schema Changes 3. Basic Queries 4. More complex Queries 5. Aggregate Functions
More informationETL Testing Concepts:
Here are top 4 ETL Testing Tools: Most of the software companies today depend on data flow such as large amount of information made available for access and one can get everything which is needed. This
More informationPostgres Copy Table From One Schema To Another
Postgres Copy Table From One Schema To Another PostgreSQL: how to periodically copy many tables from one database to another but am free to export a copy of both to another server and do whatever I want
More informationPostgreSQL A User Management Example
Author : Chris Drawater Date : 19/02/2007 Version : 1.0 PostgreSQL 8.2.1 A User Management Example Abstract PostgreSQL account management can be quite daunting. A worked example can provided a useful source
More informationThe Relational Model
The Relational Model UVic C SC 370, Fall 2002 Daniel M. German Department of Computer Science University of Victoria September 25, 2002 Version: 1.03 3 1 The Relational Model (1.03) CSC 370 dmgerman@uvic.ca
More informationSQL (and MySQL) Useful things I have learnt, borrowed and stolen
SQL (and MySQL) Useful things I have learnt, borrowed and stolen MySQL truncates data MySQL truncates data CREATE TABLE pets ( id INT UNSIGNED NOT NULL AUTO_INCREMENT, type CHAR(3) NOT NULL, PRIMARY KEY
More informationEGCI 321: Database Systems. Dr. Tanasanee Phienthrakul
1 EGCI 321: Database Systems Dr. Tanasanee Phienthrakul 2 Chapter 10 Data Definition Language (DDL) 3 Basic SQL SQL language Considered one of the major reasons for the commercial success of relational
More informationIntroduction to Databases
Introduction to Databases Abou Bakar Kaleem 1 Overview - Database - Relational Databases - Introduction to SQL Introduction to Databases 2 1 Database (1) Database : - is a collection of related data -
More informationWelcome to CO 572: Advanced Databases
Welcome to CO 572: Advanced Databases Holger Pirk Holger Pirk Welcome to CO 572: Advanced Databases 1 / 41 Purpose of this Lecture Figuring stu out What you know This should mostly be revision (tell me
More informationData, Databases, and DBMSs
Todd S. Bacastow January 2004 IST 210 Data, Databases, and DBMSs 1 Evolution Ways of storing data Files ancient times (1960) Databases Hierarchical (1970) Network (1970) Relational (1980) Object (1990)
More informationChange Schema For All Tables In Sql Server 2008
Change Schema For All Tables In Sql Server 2008 I am trying to understand why changing schema ownership is causing permissions to be revoked. I am having a hard 3.i am able to access now all tables with
More informationLet s briefly review important EER inheritance concepts
Let s briefly review important EER inheritance concepts 1 is-a relationship Copyright (c) 2011 Pearson Education 2 Basic Constraints Partial / Disjoint: Single line / d in circle Each entity can be an
More informationSearching for Program Invariants using Genetic Programming and Mutation Testing
Searching for Program Invariants using Genetic Programming and Mutation Testing Sam Ratcliff, David R. White and John A. Clark. The 13th CREST Open Workshop Thursday 12 May 2011 Outline Invariants Using
More informationDatabase Management Systems. Chapter 3 Part 1
Database Management Systems Chapter 3 Part 1 The Relational Model Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1 Why Study the Relational Model? Most widely used model. Vendors: IBM,
More informationConcepts of Database Management Seventh Edition. Chapter 4 The Relational Model 3: Advanced Topics
Concepts of Database Management Seventh Edition Chapter 4 The Relational Model 3: Advanced Topics Views View: application program s or individual user s picture of the database Less involved than full
More informationDatabase Systems CSE 414
Database Systems CSE 414 Lectures 4: Joins & Aggregation (Ch. 6.1-6.4) 1 Announcements Should now have seats for all registered 2 Outline Inner joins (6.2, review) Outer joins (6.3.8) Aggregations (6.4.3
More informationEssay Question: Explain 4 different means by which constrains are represented in the Conceptual Data Model (CDM).
Question 1 Essay Question: Explain 4 different means by which constrains are represented in the Conceptual Data Model (CDM). By specifying participation conditions By specifying the degree of relationship
More informationDatabase Design and the E-R Model (7.4, )
CSL 451 Introduction to Database Systems Database Design and the E-R Model (7.4, 7.6-7.8) Department of Computer Science and Engineering Indian Institute of Technology Ropar Narayanan (CK) Chatapuram Krishnan!
More information