SQL: a Comparative Survey

Total Page:16

File Type:pdf, Size:1020Kb

SQL: a Comparative Survey Hugh Darwen SQL: A Comparative Survey 2 Download free eBooks at bookboon.com SQL: A Comparative Survey 2th edition © 2014 Hugh Darwen & bookboon.com ISBN 978-87-403-0778-8 3 Download free eBooks at bookboon.com SQL: A Comparative Survey Contents Contents Preface 9 1 Introduction 11 1.1 Introduction 11 1.5 “Collection of Variables” 13 1.6 What Is an SQL Database? 14 1.7 “Table” Not Equal to “Relation” 15 1.8 Anatomy of a Table 16 1.9 What Is a DBMS? 17 1.10 SQL Is a Database Language 17 1.11 What Does an SQL DBMS Do? 18 1.12 Creating and Destroying Base Tables 18 1.13 Taking Note of Integrity Rules 20 1.14 Taking Note of Authorisations 21 1.15 Updating Variables 22 1.16 Providing Results of Queries 25 �e Graduate Programme I joined MITAS because for Engineers and Geoscientists I wanted real responsibili� www.discovermitas.comMaersk.com/Mitas �e Graduate Programme I joined MITAS because for Engineers and Geoscientists I wanted real responsibili� Maersk.com/Mitas Month 16 I wwasas a construction Month 16 supervisorI wwasas in a construction the North Sea supervisor in advising and the North Sea Real work helpinghe foremen advising and IInternationalnternationaal opportunities ��reeree wworkoro placements solves Real work problems helpinghe foremen IInternationalnternationaal opportunities ��reeree wworkoro placements solves problems 4 Click on the ad to read more Download free eBooks at bookboon.com SQL: A Comparative Survey Contents 2 Values, Types, Variables, Operators 26 2.1 Introduction 26 2.2 Anatomy of A Command 29 2.3 Important Distinctions 30 2.4 A Closer Look at a Read-Only Operator (+) 30 2.5 Read-only Operators in SQL 30 2.6 What Is a Type? 36 2.7 What Is a Type Used For? 39 2.8 The Type of a Table 40 2.9 Table Literals 42 2.10 Types and Representations 44 2.11 What Is a Variable? 50 2.12 Updating a Variable 55 2.13 Conclusion 57 3 Predicates and Propositions 59 3.1 Introduction 59 3.2 What Is a Predicate? 60 3.3 Substitution and Instantiation 61 3.4 How a Table Represents an Extension… 62 3.5 Deriving Predicates from Predicates 62 www.job.oticon.dk 5 Click on the ad to read more Download free eBooks at bookboon.com SQL: A Comparative Survey Contents 4 Relational Algebra— The Foundation 73 4.1 Introduction 73 4.2 Relations and Predicates 81 4.3 Relational Operators and Logical Operators 81 4.4 JOIN and AND 82 4.5 Renaming Columns 86 4.6 Projection and Existential Quantification 88 4.7 Restriction and AND 92 4.8 Extension and AND 94 4.9 UNION and OR 96 4.10 Semidifference and NOT 100 4.11 Concluding Remarks 104 EXERCISES 105 5 Building on The Foundation 107 5.1 Introduction 107 5.2 Semijoin and Composition 108 5.3 Aggregate Operators 114 5.4 Tables within a Table 118 In the past 5 years we have drilled around 95,000 km —that’s more than twice around the world. Who are we? We are the world’s leading provider of reservoir characterization, drilling, production, and processing technologies to the oil and gas industry. Who are we looking for? We offer countless opportunities in the following domains: n Operations n Research, Engineering, and Manufacturing n Geoscience and Petrotechnical n Commercial and Business We’re looking for high-energy, self-motivated graduates with vision and integrity to join our team. What will you be? careers.slb.com 6 Click on the ad to read more Download free eBooks at bookboon.com SQL: A Comparative Survey Contents 5.5 Using Aggregation on Nested Tables 120 5.6 Summarization in SQL 124 5.7 Grouping and Ungrouping in SQL 126 5.8 Wrapping and unwrapping in SQL 131 5.9 Table Comparison 132 5.10 Other Operators on Tables and Rows 133 EXERCISES 134 6 Constraints and Updating 136 6.1 Introduction 136 6.2 A Closer Look at Constraints and Consistency 140 6.3 Expressing Constraint Conditions 141 6.4 Useful Shorthands for Expressing Some Constraints 148 6.5 Updating Tables 155 EXERCISES 164 Appendix A: References and Bibliography 167 INDEPENDENT MINDED LIKEWe believe in equality, sustainability and YOU a modern approach to learning. How about you? Apply for a Master’s Programme in Gothenburg, Sweden. PS. Scholarships available for Indian students! www.gu.se/education 7 Click on the ad to read more Download free eBooks at bookboon.com This book is dedicated to members past and present of ISO/IEC Joint Technical Committee 1, Subcomittee 32, Working Group 3, “Database Languages”. 8 Download free eBooks at bookboon.com SQL: A Comparative Survey Preface Preface This book is a companion to my An Introduction to Relational Database Theory (reference [7]) and is intended to be read in parallel with that text, hereinafter referred to as “the theory book”. As I noted in the preface of that book, a university course on relational databases is typically divided into a theory component and an “industrial” component requiring the student to learn the basics of SQL. In that preface I also mention that in my own teaching I encourage students to “compare and contrast SQL with what they have learned in the theory part”. This book is my own attempt to compare and contrast it, piece by piece, with what I have taught in the theory book. The structure of the book closely parallels the first six chapters of the theory book, and the structure of each chapter is such that each section, example, and figure corresponds by number to its counterpart in the theory book. There are some gaps in the numbering. These arise when there is something in the theory book for which there is nothing relevant to discuss in the context of SQL. Conversely, I sometimes need several SQL examples in connection with a single example in the theory book, in which case I suffix the example numbers with a, b, c, and so on. I do not include counterparts of the last two chapters of the theory book. That’s because they deal with relational database design issues and the treatment, insofar as it goes, is equally applicable to SQL databases. Although existing knowledge of SQL is not a prerequisite, this book is not intended to be used as an SQL primer. Rather, its aim is to investigate the extent to which SQL supports and adheres to the theory, how it does so, and where and how it departs from the theory. Inevitably, the book also provides opportunities for comment on SQL’s degree of adherence to commonly accepted principles of computer language design. Much of the study involves comparing expressions in Tutorial D with equivalent or near-equivalent expressions in SQL. Being one of the two inventors of Tutorial D (the other is Chris Date), I am obviously exposing myself to possible accusations of deliberately choosing examples that show my own language in a favourable light. Let me just say, in advance of any such accusations, that I had no idea of writing this book when I chose the examples for the theory book, and I have tried hard to avoid over-elaborate or otherwise perverse SQL formulations. I am open to suggestions and willing to make revisions if simplifications of any of my examples come to light. 9 Download free eBooks at bookboon.com SQL: A Comparative Survey Preface I stick to standard SQL (ISO/IEC 9075—see reference [15]) in all my examples. As a member of the relevant committee (currently ISO/IEC JTC 1/SC 32/WG 3) from 1989 to 2004 I was deeply involved in the drafting of the various documents constituting that standard. I have taken advantage of that experience by sprinkling my text with subsections headed Historical Notes, these being clearly demarcated in brown to help you skip them if they don’t interest you. SQL, whose first commercial implementation appeared in 1979, has grown out of all proportion to its original self over the years and the main aim of these historical notes is to tell you when and why the various features that I use in my examples arose in the language. I was not involved in IBM’s original development of SQL, so there is a certain amount of conjecture—albeit reasonably well-informed conjecture—where I write about the early history of the language. Various SQL guides based on the standard are mentioned in Appendix A (references [2], [10], and [16]). These were all published in the 1990s and thus do not cover material that was added in SQL:1999 and subsequent editions. I am well known in some quarters as a severe critic of SQL. I have tried hard not to burden readers with my personal opinions but, rather, just to present the facts and let readers form their own opinions. In spite of my efforts I have possibly not been 100% successful in that endeavour. It was difficult. Acknowledgments My initial draft was reviewed by Jamie Collins, Chris Date, and Erwin Smout, all of whom made some useful comments. Needless to say, all the remaining errors—and there are sure to be some—are my own. Karin Hamilton Jakobsen, my contact at Ventus Publishing, has been very helpful in many respects in connection with all my books published by that company. In spite of my declared distaste for the language, SQL, I cannot speak too highly of my fellow members of the aforementioned standards committee, especially Jim Melton, the editor-in-chief since 1987, successive convenors Len Gallagher, Stephen Cannan and Keith Hare, and my former colleagues in the UK delegation, Ed Dee, Mike Sykes and Phil Brown.
Recommended publications
  • SQL from Wikipedia, the Free Encyclopedia Jump To: Navigation
    SQL From Wikipedia, the free encyclopedia Jump to: navigation, search This article is about the database language. For the airport with IATA code SQL, see San Carlos Airport. SQL Paradigm Multi-paradigm Appeared in 1974 Designed by Donald D. Chamberlin Raymond F. Boyce Developer IBM Stable release SQL:2008 (2008) Typing discipline Static, strong Major implementations Many Dialects SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003, SQL:2008 Influenced by Datalog Influenced Agena, CQL, LINQ, Windows PowerShell OS Cross-platform SQL (officially pronounced /ˌɛskjuːˈɛl/ like "S-Q-L" but is often pronounced / ˈsiːkwəl/ like "Sequel"),[1] often referred to as Structured Query Language,[2] [3] is a database computer language designed for managing data in relational database management systems (RDBMS), and originally based upon relational algebra. Its scope includes data insert, query, update and delete, schema creation and modification, and data access control. SQL was one of the first languages for Edgar F. Codd's relational model in his influential 1970 paper, "A Relational Model of Data for Large Shared Data Banks"[4] and became the most widely used language for relational databases.[2][5] Contents [hide] * 1 History * 2 Language elements o 2.1 Queries + 2.1.1 Null and three-valued logic (3VL) o 2.2 Data manipulation o 2.3 Transaction controls o 2.4 Data definition o 2.5 Data types + 2.5.1 Character strings + 2.5.2 Bit strings + 2.5.3 Numbers + 2.5.4 Date and time o 2.6 Data control o 2.7 Procedural extensions * 3 Criticisms of SQL o 3.1 Cross-vendor portability * 4 Standardization o 4.1 Standard structure * 5 Alternatives to SQL * 6 See also * 7 References * 8 External links [edit] History SQL was developed at IBM by Donald D.
    [Show full text]
  • DATABASE and KNOWLEDGE-BASE SYSTEMS VOLUME I: CLASSICAL DATABASE SYSTEMS Jeffrey D
    PRINCIPLES OF DATABASE AND KNOWLEDGE-BASE SYSTEMS VOLUME I: CLASSICAL DATABASE SYSTEMS Jeffrey D. Ullman STANFORD UNIVERSITY COMPUTER SCIENCE PRESS TABLE OF CONTENTS Chapter 1: Databases, Object Bases, and Knowledge Bases 1.1: The Capabilities of a DBMS 2 1.2: Basic Database System Terminology 7 1.3: Database Languages 12 1.4: Modern Database System Applications 18 1.5: Object-base Systems 21 1.6: Knowledge-base Systems 23 1.7: History and Perspective 28 Bibliographie Notes 29 Chapter 2: Data Models for Database Systems 32 2.1: Data Models 32 2.2: The Entity-relationship Model 34 2.3: The Relational Data Model 43 2.4: Operations in the Relational Data Model 53 2.5: The Network Data Model 65 2.6: The Hierarchical Data Model 72 2.7: An Object-Oriented Model 82 Exercises 87 Bibliographie Notes 94 Chapter 3: Logic as a Data Model 96 3.1: The Meaning of Logical Rules 96 3.2: The Datalog Data Model 100 3.3: Evaluating Nonrecursive Rules 106 3.4: Computing the Meaning of Recursive Rules 115 3.5: Incremental Evaluation of Least Fixed Points 124 3.6: Negations in Rule Bodies 128 3.7: Relational Algebra and Logic 139 3.8: Relational Calculus 145 3.9: Tuple Relational Calculus 156 3.10: The Closed World Assumption 161 Exercises 164 Bibliographie Notes 171 VIII TABLE OF CONTENTS Chapter 4: Relational Query Languages 174 4.1: General Remarks Regarding Query Languages 174 4.2: ISBL: A "Pure" Relational Algebra Language 177 4.3: QUEL: A Tuple Relational Calculus Language 185 4.4: Query-by-Example: A DRC Language 195 4.5: Data Definition in QBE 207 4.6:
    [Show full text]
  • Datalog Educational System V4.2 User's Manual
    Universidad Complutense de Madrid Datalog Educational System Datalog Educational System V4.2 User’s Manual Fernando Sáenz-Pérez Grupo de Programación Declarativa (GPD) Departamento de Ingeniería del Software e Inteligencia Artificial (DISIA) Universidad Complutense de Madrid (UCM) September, 25th, 2016 Fernando Sáenz-Pérez 1/341 Universidad Complutense de Madrid Datalog Educational System Copyright (C) 2004-2016 Fernando Sáenz-Pérez Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in Appendix A, in the section entitled " Documentation License ". Fernando Sáenz-Pérez 2/341 Universidad Complutense de Madrid Datalog Educational System Contents 1. Introduction........................................................................................................................... 9 1.1 Novel Extensions in DES ......................................................................................... 10 1.2 Highlights for the Current Version ........................................................................ 11 1.3 Features of DES in Short .......................................................................................... 11 1.4 Future Enhancements............................................................................................... 14 1.5 Related Work............................................................................................................
    [Show full text]
  • A Query Facility for Allegro Redacted for Privacy Abstract Approved: Earl F
    AN ABSTRACT OF THE THESIS OF Richard Goodemoot for the degree of Master of Science in Computer Science presented on June 11 1986. Title: A Query Facility for Allegro Redacted for Privacy Abstract approved: Earl F. Ecklund, Jr. Allegro is a network database management system being developed at Oregon State University. This project adds a user friendly query facility to the system. The user is presented with pictorial display of the network records and a query interface modeled on the QueryByExample system.By request the user may be shown the network sets of the queryschema. When necessary the user may specify query navigationofthe network schema. While implemented and functional, this facility should be considered as a feasibility study for a full query system on a network data base. To provide the desired display this facility is implemented on a system separate from the main Allegro system and uses a communication interface to it. This facility is a Smalitalk implementation. A Query Facility for Allegro by Richard Goodemoot A THESIS submitted to Oregon State University In partial fulfillment of the requirements for the degree of Master of Science Completed June 11, 1986 Commencement June 1987 APPROVED: / Redacted for Privacy Adjunct Professor of Computer Science in Charge of Major Redacted for Privacy on behalf of Walter Rudd Chairman of Department of Computer Science Redacted for Privacy Dean of Gradtfate School Date thesis is presented June 11, 1986 Typed by Richard Goodemoot TABLE OF CONTENTS Page 1 INTRODUCTION 1 1.1 Network Database
    [Show full text]
  • (12) United States Patent (10) Patent No.: US 8.458,105 B2 Nolan Et Al
    USOO84581 05B2 (12) United States Patent (10) Patent No.: US 8.458,105 B2 Nolan et al. (45) Date of Patent: Jun. 4, 2013 (54) METHOD AND APPARATUS FOR 5,215.426 A 6/1993 Bills, Jr. ANALYZING AND INTERRELATING DATA 5,327.254. A 7/1994 Daher 5,689,716 A 11, 1997 Chen 5,694,523 A 12, 1997 Wical (75) Inventors: James J. Nolan, Springfield, VA (US); 5,708,822 A 1, 1998 Wical Mark E. Frymire, Arlington, VA (US); 5,798,786 A 8, 1998 Lareau et al. Andrew F. David, Ft. Belvoir, VA (US) 5,841,895 A 1 1/1998 Huffman 5,884,305 A 3/1999 Kleinberg et al. (73) Assignee: Decisive Analytics Corporation, 5,903,307 A 5/1999 Hwang Arlington, VA (US) 5,930,788 A 7, 1999 Wical glon, 5,953,718 A 9, 1999 Wical 6,009,587 A 1/2000 Beeman (*) Notice: Subject to any disclaimer, the term of this 6,052,657 A 4/2000 Yamron et al. patent is extended or adjusted under 35 6,064,952 A 5/2000 Imanaka et al. U.S.C. 154(b) by 771 days. 6,073,138 A 6/2000 de l'Etraz et al. 6,085,186 A 7/2000 Christianson et al. 6,173,279 B1 1/2001 Levin et al. (21) Appl. No.: 12/548,888 6,181,711 B1 1/2001 Zhang et al. 6,185,531 B1 2/2001 Schwartz et al. (22) Filed: Aug. 27, 2009 6,199,034 B1 3, 2001 Wical (65) Prior Publication Data (Continued) US 2010/0205128A1 Aug.
    [Show full text]
  • Database Management Systems Ebooks for All Edition (
    Database Management Systems eBooks For All Edition (www.ebooks-for-all.com) PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Sun, 20 Oct 2013 01:48:50 UTC Contents Articles Database 1 Database model 16 Database normalization 23 Database storage structures 31 Distributed database 33 Federated database system 36 Referential integrity 40 Relational algebra 41 Relational calculus 53 Relational database 53 Relational database management system 57 Relational model 59 Object-relational database 69 Transaction processing 72 Concepts 76 ACID 76 Create, read, update and delete 79 Null (SQL) 80 Candidate key 96 Foreign key 98 Unique key 102 Superkey 105 Surrogate key 107 Armstrong's axioms 111 Objects 113 Relation (database) 113 Table (database) 115 Column (database) 116 Row (database) 117 View (SQL) 118 Database transaction 120 Transaction log 123 Database trigger 124 Database index 130 Stored procedure 135 Cursor (databases) 138 Partition (database) 143 Components 145 Concurrency control 145 Data dictionary 152 Java Database Connectivity 154 XQuery API for Java 157 ODBC 163 Query language 169 Query optimization 170 Query plan 173 Functions 175 Database administration and automation 175 Replication (computing) 177 Database Products 183 Comparison of object database management systems 183 Comparison of object-relational database management systems 185 List of relational database management systems 187 Comparison of relational database management systems 190 Document-oriented database 213 Graph database 217 NoSQL 226 NewSQL 232 References Article Sources and Contributors 234 Image Sources, Licenses and Contributors 240 Article Licenses License 241 Database 1 Database A database is an organized collection of data.
    [Show full text]
  • Non-Spatial Database Models
    UC Santa Barbara Core Curriculum-Geographic Information Science (1997-2000) Title Unit 045 - Non-Spatial Database Models Permalink https://escholarship.org/uc/item/3dj9g8m4 Authors 045, CC in GIScience Meyer, Thomas H. Publication Date 2000 Peer reviewed eScholarship.org Powered by the California Digital Library University of California Unit 045 - Non-Spatial Database Models by Thomas H. Meyer, Mapping Sciences Laboratory, Texas A&M University, USA This unit is part of the NCGIA Core Curriculum in Geographic Information Science. These materials may be used for study, research, and education, but please credit the author, Thomas H. Meyer, and the project, NCGIA Core Curriculum in GIScience. All commercial rights reserved. Copyright 1997 by Thomas H. Meyer. Advanced Organizer Topics covered in this unit This unit introduces the terms and concepts needed to understand non-spatial databases and their underlying data models, including: a motivation of the need for database management systems an overview of database terminology a description of non-spatial data models Intended Learning Outcomes After learning the material covered in this unit, students should be able to: explain the purpose of a database management system list the major non-spatial data models and their features identify the primary distinctions between the major non-spatial data models Instructors' Notes Full Table of Contents Metadata and Revision History Non-spatial Database Models 1. Motivation: Why database management systems? Database management systems (DBMSs) are very good at organizing and managing large collections of persistent data. Core Curriculum - Geographic Information Science Page 1 NCGIA 1997 - 2000 Unit 045 - Non-Spatial Database Models We use DBMSs to help cope with large amounts of data because, when problems get big, they get hard.
    [Show full text]
  • The DB World in 1970
    The DB world in 1970 the Network model (e.g. IDMS CODASYL ) application developers had to be aware of the details of the data representation on disc, and there was no generic high-level DML on the plus side, the model could capture a general graph structure Ref : Charles W Bachman 1973 ACM Turing Award winner __________________________________________ the Hierarchical model (e.g. IMS from IBM ) less of a shambles, less for the application developer to worry about, but incomplete in what it could model tree-structured data only __________________________________________ The Relational DB Model ( Ted Codd, 1970 ) work carried out at IBM (UK) Scientific Centre at Peterlee: first serious implementation of the Model, IS/1 , 1970-72 Data Manipulation Language, ISBL , based on relational algebra follow-up system, PRTV , written in 1972-74, ref. Wikipedia "the world's first relational database management system that could handle significant data volumes". in practical terms read only , update was HARD the main language supported was still ISBL . __________________________________________ 1976 joint project between IBM Peterlee and the Computer Lab new implementation (CODD) based on PRTV , coroutine-based relational DB research in the US Earliest thrust from Universities, in particular Mike Stonebraker's group at UC, Berkeley INGRES QUEL > SEQUEL 1974 work starts on System-R at the IBM San Jose Research Lab. The first serious user was Pratt & Whitney in 1977. Research on the development of SQL was a key part of the research at San Jose. System-R later became DB2 . __________________________________________ Lots of DB research at UK Universities as well, notably in Scotland: Aberdeen, Edinburgh, Glasgow, St Andrews all had good groups __________________________________________ A further important paper by Ted Codd : Extending the Database Relational Model to Capture More Meaning.
    [Show full text]
  • Maier, Chapter 15: Relational Query Languages
    Chapter 15 RELATIONAL QUERY LANGUAGES In this chapter we give a brief overview of several query languages from vari- ous relational database systems. We shall not give a complete exposition of the languages. Our point is, rather, to give the flavor of each, show how they are based on the algebra, calculus, or tableaux, and indicate where they depart from the relational model as we have defined it. We shall look at five languages: ISBL, from the PRTV system; QUEL, from INGRES; SQL, from System R; QBE, which runs atop several data- base systems; and PIQUE, from the experimental PITS system. ISBL is based on relational algebra, QUEL and SQL resemble tuple caiculus, and QBE is a domain calculus-like language, with a syntax similar to tableau queries. PIQUE is a tuple calculus-like language, but it presents a universal relation scheme interface through the use of window functions. For practical reasons and usability considerations, relational query lan- guages do not conform precisely to the relational model. They all contain fea- tures that are extensions to the model, and some have restrictions not present in the model. Nearly all relational systems have facilities for virtual relation definition. Languages based on tuple and domain calculus must allow only safe expressions. Safety is usually guaranteed by the absence of explicit quantifiers or by having variables range over relations rather than all tuples on a given scheme. Query languages often alfow a limited amount of arith- metic and string computation on domain values, and sometimes handle sets of values through aggregate operators (count, average, maximum) and set comparisons.
    [Show full text]
  • CS319 Theory of Databases Content of the Module 1 Content of The
    Content of the module 1 GENERAL BACKGROUND TO DATABASES … 0. Preface to the Theory of Databases preface 1. Generalities on Databases intro CS319 Theory of Databases 2. Ingres and Quel ingres 3. Relational Database Models RelMod [4. SQL sql ] Course Review [5. SQL-EDDI worksheets <cs233 website> ] 2004-2005 5/10/2005 1 CS319 Theory of Databases 5/10/2005 2 CS319 Theory of Databases Content of the module 2 Content of the module 3 RELATIONAL THEORY: ALGEBRA-CALCULUS RELATIONAL DATABASE DESIGN … [10. Entity-relationship modelling ERmodel ] 6. Introduction to Relational Calculus relcalc 11. Decomposition of relational schemes decomp 7. Query optimisation opt 12. Functional Dependency depend 8. From Relational Calculus to Algebra drelcalc 13. Relational Database Design RDBdesign 9. Relational Query languages / modelling state relql [14. Normal Forms RDBdesignNF ] 5/10/2005 3 CS319 Theory of Databases 5/10/2005 4 CS319 Theory of Databases Content of the module 4 Preface CRITIQUE AND EVALUATION … Principal theme of the Theory of Databases module: The OO and 3rd Gen Database Manifestos How do theory and computing practice relate with [Tim Heron : OO and Object-Relational DBs] specific reference to databases? Hugh Darwen: The Relational Model and SQL General orientation especially useful for the two essay questions 1 and 2: Mick Ridley’s reflections Hugh Darwen: Temporal data and the Relational Model Motivation for 15. Why relational? whyrel • study of relational theory 16. Why not relational? whynotrel • discussion of practice and historical context
    [Show full text]
  • User's Guide for Water9 Software
    USER’S GUIDE FOR WATER9 SOFTWARE Version 2.0.0 August 16, 2001 Note that the updated version of this manual is available in a compiled help format that is available from WATER9. Office of Air Quality Planning and Standards U. S. Environmental Protection Agency Research Triangle Park, NC WATER9: Preface 0. PREFACE Overview of WATER9 WATER9 is a Windows based computer program and consists of analytical expressions for estimating air emissions of individual waste constituents in wastewater collection, storage, treatment, and disposal facilities; a data base listing many of the organic compounds; and procedures for obtaining reports of constituent fates, including air emissions and treatment effectiveness. WATER9 is a significant upgrade of features previously obtained in the computer programs WATER8, Chem9, and Chemdat8. WATER9 contains a set of model units that can be used together in a project to provide a model for an entire facility. WATER9 is able to evaluate a full facility that contains multiple wastewater inlet streams, multiple collection systems, and complex treatment configurations. WATER9 provides separate emission estimates for each individual compound that is identified as a constituent of the wastes. The emission estimates are based upon the properties of the compound and its concentration in the wastes. To obtain these emission estimates, the user must identify the compounds of interest and provide their concentrations in the wastes. The identification of compounds can be made by selecting them from the data base that accompanies the program or by entering new information describing the properties of a compound not contained in the data base. WATER9 has the ability to use site-specific compound property information, and the ability to estimate missing compound property values.
    [Show full text]
  • Why Are There No Relational Dbmss?
    Hugh Darwen If [we] could learn from history, what lessons it might teach us! —Samuel Taylor Coleridge, Table Talk (1831) L’histoire n’est que le tableau des crimes et des malheurs. —Voltaire, L’Ingénu (1767) I describe the circumstances in which I obtained, in 1978, a good answer to a burning question: how can E.F. Codd’s relational model of data of 1970 [2] be properly embraced by a computer language? Considering that the answer to that question (reference [12]) was publicly available in 1975, I wonder why it all went wrong and suggest some possible reasons. Note: Three referenced papers, [6], [8], and [9], are companion papers to this one that were originally drafted as appendixes to this paper. “If you want something state of the art, how about developing a relational database management system?” That was my suggestion, back in 1978, in an e-mail (sometime before that term entered our lexicon!) to my colleague Vincent Dupuis in the international software development centre for IBM’s Data Centre Services (DCS), which IBM offered in most countries outside of the U.S. in those days. At that time this DCS Support Centre was split between locations in London, England, for planning and Uithoorn, The Netherlands, for development; and I was in the development department. As one of our lead planners Vincent had foreseen the need for a new service, now that cheaper computers meant that fewer businesses needed to rely on time-sharing services such as IBM’s. I was about to move from development to planning (temporarily, as it turned out) and I had long nurtured a dream to produce a relational DBMS, thanks to my attendance at Chris Date’s course on the subject in 1972.
    [Show full text]