ISDS 3003 CH 1 - 4

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/227

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

228 Terms

1
New cards

Data

numeric, textual, visual, or audio information that describes real-world systems

2
New cards

Scope

amount of data produced & collected can vary

3
New cards

Format

data may be produced as numbers, text, images, audio, or video

4
New cards

Access

some data sources are private while other are made publicly available

5
New cards

Analog vs Digital

Analog: encoded as continuous variations on various physical media

Digital: encoded as 0s and 1s on electronic & magnetic media

6
New cards

Database

a collection of data in a structured format

7
New cards

Database System (aka Database Management System/DBMS)

software that reads and writes data in a database

8
New cards

Query

request to retriever or change data in a database

9
New cards

Query Language

specialized programming language designed specifically for DBMS

10
New cards

Database Application 

software that helps business users interact with DBMS. Programmers write applications to simplify the user experience & ensure data access is efficient and secure 

11
New cards

Database Administrator

responsible for securing the database system against unauthorized users – enforces procedures for user access and database systems availability  

12
New cards

Database Designer

determines the format of each data element and the overall database structure 

13
New cards

Database Programmer

develops computer programs that utilize a database

14
New cards

Database User

a consumer of data in a database. Database users request, update, or use stored data to generate reports or information

15
New cards

Large, complex databases with many users require: 

  • Recovery

  • Rules

  • Authorization

  • Performance    

  • Security  

16
New cards

Transaction

a group of queries that must be either completed or rejected as a whole. Execution of them may lead to inconsistent or incorrect data  

 

When processing transactions, database systems must: 

  • Ensure transactions are processed completely or not at all 

  • Prevent conflicts between concurrent transactions  

  • Ensure transaction results are never lost  

17
New cards

Architecture

describes the internal components and the relationships between components, which are similar at a high level 

18
New cards

Query Processor

interprets queries, creates a plan to modify the database or retrieve data, and returns query results to the application   

  • Performs query optimization to ensure the most efficient instructions are executed on the data 

 

19
New cards

Storage Manager

translates the query processor instructions into low-level file-system commands that modify or retrieve data  

20
New cards

Indexes

used to quickly locate data in large data sets 

21
New cards

Log

a file containing a complete record of all inserts, updates, and deletes processed by the database; use log records to restore database if information is lost - stores queries processed by the database

22
New cards

Catalog (AKA data dictionary)

directory of and describes database objects like tables, columns, indexes

23
New cards

Relational Database

stores data in tables, columns, and rows, similar to a spreadsheet 

  • Ideal for databases that require an accurate record of every transaction  

24
New cards

SQL (Structured Query Language)

includes statements that read and write data, create and delete tables, and administer the database system  

25
New cards

Big Data

massive volumes of online data

26
New cards

NoSQL

newer non-relational system for "not only SQL" and are optimized for big data 

27
New cards

Open Source

software that anyone can inspect, copy, and modify with no licensing fee  

28
New cards

Query

a command for a database that typically inserts new data, retrieves data, updates data from a database 

29
New cards

Query Language

a computer programming language for writing database queries  

 

30
New cards

CRUD

four common queries sometimes referred to as CRUD operations –

  • Create

  • Read

  • Update

  • Delete data 

31
New cards

Statement

a complete, executable database command  

32
New cards

SQL "CREATE TABLE" statement

creates a new table by specifying the table and column names  

33
New cards

Data Type

indicates the format of column; can be numeric, textual, or complex  

  • INT stores integer values 

  • DECIMAL stores fractional numeric values 

  • VARCHAR stores textual values – string of variable length with specified maximum 

  • DATE stores year, month, and day  

  • FLOAT stores fractional values

  • CHAR store smaller set of characters that have little variation   

34
New cards

Database Design

a specification of database objects (i.e. tables, columns, data types, and indexes) 

35
New cards

Conceptual Design

Database requirements without regard to a specific database system

develops an entity-relationship model, capturing data requirements while ignoring implementation details  

  1. Important for complex databases with many users 

<p>Database requirements without regard to a specific database system</p><p></p><p><span style="background-color: inherit; line-height: 20.7px;"><span>develops an </span><strong><span>entity-relationship model</span></strong><span>, capturing data requirements while ignoring implementation details&nbsp;</span></span><span style="line-height: 20.7px;"><span>&nbsp;</span></span></p><ol><li><p class="Paragraph SCXO250318418 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px;"><em><span>Important for </span><u><span>complex databases with many users</span></u></em></span><span style="line-height: 20.7px;"><span>&nbsp;</span></span></p></li></ol><p></p>
36
New cards

Logical design  

Phase implements database requirements in a specific database system – either a process or a design

converts the entity-relationship model into tables, columns, and keys for a particular database system  

<p>Phase implements database requirements in a specific database system – either a process or a design</p><p></p><p><span style="background-color: inherit; line-height: 20.7px;"><span>converts the </span><strong><span>entity-relationship model</span></strong><span> into tables, columns, and keys for a particular database system&nbsp;</span></span><span style="line-height: 20.7px;"><span>&nbsp;</span></span></p>
37
New cards

Physical design

Adds indexes and specifies how tables are organized on storage media

adds indexes and specifies how tables are organized on storage media  

38
New cards

ER Diagrams

rectangles with round corners representing entities  

  • Lines = relationships  

  • Inside Text = attributes  

<p><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>rectangles with round corners representing entities&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><ul><li><p class="Paragraph SCXO85789182 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Lines = relationships&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li><li><p class="Paragraph SCXO85789182 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Inside Text = attributes&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li></ul><p></p>
39
New cards

Key

a column used to identify individual rows of a table  

40
New cards

Table Diagram

used for logical design 

  • Rectangles with square corners represent tables  

  • Text within rectangles = columns  

  • Bullets = key columns  

  • Arrows between tables = keys  

    • Tail – aligned with column 

    • Arrow – points to table containing key  

<p><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>used for logical design</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><ul><li><p class="Paragraph SCXO120792637 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Rectangles with square corners represent tables&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li><li><p class="Paragraph SCXO120792637 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Text within rectangles = columns&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li><li><p class="Paragraph SCXO120792637 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Bullets = key columns&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li><li><p class="Paragraph SCXO120792637 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Arrows between tables = keys&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><ul><li><p class="Paragraph SCXO120792637 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Tail – aligned with column</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li><li><p class="Paragraph SCXO120792637 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Arrow – points to table containing key&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li></ul></li></ul><p></p>
41
New cards

Schema

the logical design as specified in SQL and depicted in a table diagram

42
New cards

Data Independence

principle that physical design never affects query results  

 

43
New cards

Application Programming Interface (API)

library of procedures or classes that links a host programming language to a database  

44
New cards

MySQL

leading relational database system, sponsored by Oracle 

 

45
New cards

MySQL Community

a free edition with a complete set of database services and tools – commonly used in university courses and training programs

46
New cards

MySQL Enterprise

a paid edition for managing commercial databases – includes MySQL Community and additional capabilities admirative applications  

47
New cards

MySQL HeatWave

a commercial edition with additional capabilities for analytics and machine learning  

48
New cards

MySQL Server

reference database system for the MySQL Community edition  

 

49
New cards

SQL Sandbox

a zyBooks programming tool that runs on MySQL

50
New cards

Zybooksdb

an empty database used in most sandbox exercises 

51
New cards

Sakila

a sample database maintained by MySQL – contains 16 tables with sample data, describing a video rental business 

52
New cards

MySQL Workbench

a desktop application with a graphical interface, available with MySQL Server – it's powerful but complex 

53
New cards

MySQL Command-Line Client

a textual programming tool, also available with MySQL Server  

54
New cards

Database Model

a conceptual framework for database systems, with 3 parts: 

 

  1. Data structures – prescribe how data is organized 

  2. Operations – manipulate data structures  

  3. Rules – govern valid data  

<p><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>a conceptual framework for database systems, with 3 parts:</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><p class="Paragraph SCXO62414687 BCX0" style="text-align: left;"><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><ol><li><p class="Paragraph SCXO62414687 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Data structures – prescribe how data is organized</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li><li><p class="Paragraph SCXO62414687 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Operations – manipulate data structures&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li><li><p class="Paragraph SCXO62414687 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>Rules – govern valid data&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li></ol><p></p>
55
New cards

Relational Model

a database model based on a tabular data structure 

56
New cards

Relational Operations

  • Select selects a subset of (or all) rows of a table 

  • Project selects one or more columns of a table 

  • Product lists all combinations of rows of 2 tables 

  • Join combines 2 tables by comparing related columns 

  • Union selects ALL rows of 2 tables 

  • Intersect selects rows common to 2 tables 

  • Difference selects rows that appear in 1 table but not another  

  • Rename changes a table name 

  • Aggregate computes functions over multiple table rows (I.e. sum, count) 

    • Relational Algebra: these operations as a collective  

57
New cards

Relational Rules

part of the relational model and govern data in every relational database  

  • Unique primary key 

  • Unique columns names 

  • No duplicate rows  

58
New cards

Set

an unordered collection of elements enclosed in braces  

59
New cards

Tuple

an ordered collection of elements enclosed in parentheses - i.e. (a, b, c) or (c, b, a) 

60
New cards

How data is organized: 

  • Table – has a name, fixed tuple of columns, + varying set of rows  

  • Column – has a name + a data type 

  • Row – unnamed tuple of values; each value corresponds to a column and belongs to the column's data type 

    • Rows are NOT ordered so sets are not ordered  

  • Data Type – named set of values, from which column values are drawn 

61
New cards

Business Rules

based on business policy + specific to a particular database  

  • All rows in a particular column must have known values 

  • Values may not repeat in different rows  

  • When a row is deleted, all related rows should be deleted  

62
New cards

SQL Sublanguages:  

knowt flashcard image
63
New cards

 

SQL Language Elements: 

  • Literal: explicit value

  • Keyword: word with a special meaning for the language processor 

  • Identifier: name of a database object

  • Expression: sequence of literals, identifiers, and operations that evaluate to a single value 

  • Comment: text that is ignored by the language processor 

<ul><li><p><strong>Literal:</strong> explicit value</p></li><li><p><strong>Keyword:</strong> word with a special meaning for the language processor&nbsp;</p></li><li><p><strong>Identifier:</strong> name of a database object</p></li><li><p><strong>Expression:</strong> sequence of literals, identifiers, and operations that evaluate to a single value&nbsp;</p></li><li><p><strong>Comment:</strong> text that is ignored by the language processor&nbsp;</p></li></ul><p></p>
64
New cards

Statement

a complete, executable instruction, ending with a semicolon – consists of one or more clauses 

65
New cards

Clause

begins with a keyword, followed by additional language elements  

66
New cards

SQL Standard:

specifies the official syntax and behavior of SQL statements 

67
New cards

Database System Instance

a single executing copy of a database system 

68
New cards

CREATE DATABASE Database Name

creates a new database 

69
New cards

DROP DATABASE DatabaseName

deletes a database 

70
New cards

USE DatabaseName

selects a default database for use in subsequent statements

71
New cards

SHOW statement

provides information about databases, tables, and columns: 

  • SHOW DATABASES lists all databases in the database system instance. 

  • SHOW TABLES lists all tables in the default database. The optional clause FROM DatabaseName lists tables in a named database. 

  • SHOW COLUMNS FROM TableName lists all columns in the TableName table of the default database. 

  • SHOW CREATE TABLE TableName shows the CREATE TABLE statement for the TableName table of the default database. 

72
New cards

Table

a name, a fixed sequence of columns, and a varying set of rows 

  • Must have at least one column and zero rows 

Rules Governing Tables: 

  1.  Exactly one value per cell 

  2. No duplicate column names 

  3. No duplicate rows 

    1. May be used in temporary tables but deleted once moved to a permanent tables 

  4. No row order 

73
New cards

Column

a name and a data type

74
New cards

Row

an unnamed sequence of values – each value corresponds to a column and belongs to the column's data type

75
New cards

Cell

a single column of a single row

76
New cards

Data Independence

rule #4, allows database administrators to improve query performance  

  • The result of a database query is not affected by the physical organization of data on storage devices  

77
New cards

CREATE TABLE

statement creates a new table by specifying the table name, column names, and column data types

78
New cards

DROP TABLE

deletes a table, along with all the table's rows, from a database 

79
New cards

ALTER TABLE

adds, deletes, or modifies columns on an existing table

<p><span style="background-color: inherit;"><span>adds, deletes, or modifies columns on an existing table</span></span></p>
80
New cards

data type

a named set of values from which column values are drawn. In relational databases, most data types fall into one of the following categories

81
New cards

Integer

data types represent positive and negative integers.

  • INT, implemented as 4 bytes of storage

  • SMALLINT, implemented as 2 bytes.

82
New cards

Decimal

data types represent numbers with fractional values. Decimal data types vary by number of digits after the decimal point and maximum size

  • FLOAT

  • DECIMAL.

83
New cards

Character

data types represent textual characters

  • CHAR, a fixed string of characters

  • VARCHAR, a string of variable length up to a specified maximum size

84
New cards

Date & Time

data types represent date, time, or both

  • DATE

  • TIME

  • DATETIME

  • TIMESTAMP.

85
New cards

Binary

data types store data exactly as the data appears in memory or computer files, bit for bit. The database manages binary data as a series of zeros and ones

  • BLOB

  • BINARY

  • VARBINARY

  • IMAGE.

86
New cards

Spatial

data types store geometric information, such as lines, polygons, and map coordinates.

  • POLYGON

  • POINT

  • GEOMETRY

87
New cards

Document

data types contain textual data in a structured format such as XML or JSON

88
New cards

Signed

may be negative

89
New cards

Unsigned

cannot be negative 

90
New cards

Operator

a symbol that computes a value from one or more other values, (operands) - may be numeric, character, and other data types

Arithmetic: compute numeric values from numeric operands 

 

  • Comparison: compute logical values TRUE or FALSE 

 

  • Logical: compute logical values from logical operands  

<p><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>a symbol that computes a value from one or more other values, (</span><strong><span>operands) - </span></strong><span>may be numeric, character, and other data types</span></span></p><p><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><strong><span>Arithmetic: </span></strong><span>compute numeric values from numeric operands</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><p class="Paragraph SCXO247459396 BCX0" style="text-align: left;"><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><ul><li><p class="Paragraph SCXO247459396 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><strong><span>Comparison: </span></strong><span>compute logical values TRUE or FALSE</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li></ul><p class="Paragraph SCXO247459396 BCX0" style="text-align: left;"><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p><ul><li><p class="Paragraph SCXO247459396 BCX0" style="text-align: left;"><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><strong><span>Logical: </span></strong><span>compute logical values from logical operands&nbsp;</span></span><span style="line-height: 20.7px; color: windowtext;"><span>&nbsp;</span></span></p></li></ul><p></p>
91
New cards

Unary

operator has one operand

92
New cards

Binary

operator has two operands

93
New cards

Expression

a string of operators, operands, and parentheses that evaluates to a single value 

94
New cards

Operator Precedence

the way operations in an expression are evaluated in order

95
New cards

SELECT / FROM

statement selects rows from a table 

  • SELECT clause and FROM clause  

    • SELECT clause: specifies one or more expressions, separated by commas, that determine what values are returned for each row  

    • FROM clause: specifies the table from which rows are selected  

  • Result Table: the SELECT statement returns a set of rows called the result table 

96
New cards

LIMIT

a clause that limits the number of rows returned by a SELECT statement  

97
New cards

Condition

an expression that evaluates a logical statement 

98
New cards

WHERE

an optional clause in the SELECT statement that specifies condition for selecting rows  

  • TRUE – row is selected  

  • FALSE/NULL – row is omitted 

99
New cards

NULL

a special value that represents either unknown or inapplicable data – NOT the same as zero   

  • IS NULL and IS NOT NULL may be used to select NULL values (proven as true) 

100
New cards

Truth Tables

the value of logical expressions containing NULL operands 

<p><span style="background-color: inherit; line-height: 20.7px; color: windowtext;"><span>the value of logical expressions containing </span><strong><span>NULL</span></strong><span> operands&nbsp;</span></span></p>