1.3.2 Databases Flashcards

1
Q

Whats a database?

A

An organised collection of related data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What’s a flat file database?

A

A database in 0NF, where all data is stored in a single table, about a single entity. It’s useful for static (non-changing) data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What’s an entity

A

A category about which data needs to be recorded e.g. a person, or thing. (A table in the conceptional phase)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What’s a table

A

A Two-dimensional representation of data that is stored in rows and columns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What’s a field

A

A single piece of data about an entity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What’s a record?

A

A group of fields about a specific entity (AKA a row)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What’s a relational database?

A

Where data is held in multiple tables that are linked via relationships.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What’s a primary key?

A

A field used to uniquely identify each record in the table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What’s a feature of a primary key field?

A

It’s automatically indexed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What’s a composite primary key

A

When multiple fields are used to uniquely identify each record in the table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are the three types of relationships between entities?

A

One-to-one,
One-to-many,
Many-to-many

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What’s a foreign key?

A

A field that creates a relationship between two tables, appearing as the primary key in another table.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the benefits of foreign keys?

A

They maintain the relationship between tables

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Why do we use junction tables?

A

To eliminate many-to-many relationships

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are junction tables?

A

A junction table contains the primary key columns of the two or more tables you want to relate.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is data integrity

A

Maintaining and ensuring the reliability of data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What needs to be considered when reinforcing data integrity in a database

A

Accuracy, completeness, consistency over lifecycle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is Entity integrity

A

Stipulating that every table must have a primary key

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is domain integrity

A

Ensuring every attribute in a relational database is associated with a domain

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What’s a domain

A

The set of allowed values that an attribute can contain, e.g. numerical

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What is referential integrity

A

It’s a data quality concept that prevents data redundancy and inaccuracies

It a rule that foreign keys in one table can only refer to primary keys in
another table.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What’s data validation?

A

The process of ensuring the accuracy and quality of data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What’s data verification?

A

The process of checking data for inconsistencies after it has been moved

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What are the two types of data verification?

A

Visual check and Double entry

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What’s Visual Check data verification?

A

When a person checks that the data being entered from one document to another is the same

26
Q

What’s Double Entry data verification?

A

Requires same info to be input twice into 2 separate fields

The two values are then compared to check they’re the same

27
Q

What’s data accuracy?

A

Refers to how valid data is, or the processes used to ensure that data is trustworthy

28
Q

What’s normalization?

A

The concept of splitting tables in a database and arranging the data to move it from 1NF - 3NF

29
Q

At what point is a database considered normalized

A

When it meets third normal form

30
Q

What’s 0NF

A

A flat file prior to normalization

31
Q

Define 1NF

A

When…

Each record has a primary key

Data is of a single value type (atomic)

There are no repeating groups of attributes

Values in fields are from the same domain

32
Q

Define 2NF

A

No partial dependencies- each field depends on primary key

Data in 1NF already

33
Q

Define 3NF

A

Data already in 2NF

No non-key (transitive) dependencies

All fields depend on the key, the whole key and nothing but the key

34
Q

What are the steps in eliminating many-to-many relationships?

A

Create a junction table

Assign primary keys to initial tables

Create a composite key for junction table (and provide foreign keys)

Initial tables will both have one to many relationships with junction table

35
Q

What does SQL stand for?

A

Structured Query Language

36
Q

What are the different SQL commands and their uses?

A

SELECT- List of fields to be displayed

FROM- List the table(s) data will come from

WHERE- List of the search criteria (operators used here)

ORDER BY- List the fields that data is to be sorted in (e.g. price ASC)

  • / (Wild Card) = ‘All’

LIKE- Used to search for a pattern

BETWEEN- Used to search in an inclusive range

IN- Used to search in a specific column/ field

37
Q

Why is a join clause used in SQL?

A

To combine data from two or more tables into one data set, by identifying the primary-to-foreign key relationship.

38
Q

Basic syntax for inserting new records into tables?

A

INSERT INTO “table” (field1, field2,…)
VALUES (value1,value2,…);

39
Q

Basic syntax for deleting data from a table?

A

DELETE FROM table
WHERE criteria;

if criteria involves primary key- whole record deleted

40
Q

Datatypes?

A

CHAR
VARCHAR
BOOLEAN
INT
FLOAT- decimals
DATE- dd/mm/yy (enlosed in hashtags)
TIME
CURRENCY

41
Q

Define a transaction

A

A single logical unit of work. A transaction can be a single operation but most transactions have multiple steps.

42
Q

Transaction feature?

A

All of the required steps need to be successfully executed before the transaction can be considered complete. Either all of the steps must happen, or none of them must happen.

43
Q

Ideal carrying out of transactions?

A

Transactions would be carried out serially (one after another)

44
Q

Serialization?

A

Multiple transactions are executed one after another.

A transaction can only be serialized if it can be carried out irrespective of any other transaction.

45
Q

Concurrent processing?

A

The simultaneous execution of multiple tasks or transactions.

Improves performance and efficiency of multi-user databases.

46
Q

What methods enable concurrent processing to be usable?

A

Record locking, Timestamp Ordering

47
Q

What is record locking?

A

A method of preventing simultaneous access to the same record by different users of the database.

The DBMS locks the affected record until the update is completed
- an update can be part of a larger transaction

Several records may need to be locked to ensure system integrity- causing potential deadlocks

48
Q

What can be used to fix deadlocks?

A

Commitment ordering

49
Q

Commitment ordering?

A

A serialization technique

Ensures NO transactions are lost if two clients are trying to update a record at the same time

Transactions are ordered according to when they were initiated and by their dependencies on one another

Can prevent a deadlock by blocking one request until another is completed

50
Q

Timestamp ordering?

A

Each record has two time stamps: Time last read, Time last updated.

Each transaction is assigned a unique timestamp when it starts

Newer transactions have higher timestamps

The database system executes transactions in the order of their timestamps

If a transaction tries to read or write a data item with a lower/ older timestamp than the existing one, the operation is rejected.

51
Q

SQL Commands for transaction processing?

A

SET TRANSACTION- Initiates transaction

COMMIT- Once all steps are written down it makes changes permanent

ROLLBACK- Reverts interim changes to the point before the transaction was started

52
Q

ACID stands for?

A

Atomicity

Consistency

Isolation

Durability

53
Q

Atomicity?

A

Transaction must be process entirely or not at all

54
Q

Consistency?

A

Transaction execution must maintain referential integrity rules

55
Q

Isolation?

A

Simultaneous transactions results remain unaffected; as if they were executed sequentially

56
Q

Durability?

A

Ensure data is saved once a transaction is completed- irrespective of hardware (multiple copies in different physical locations)

57
Q

What is ACID?

A

The set of properties of database transactions that will guarantee the integrity of data

If a database system is good, it’s ACID compliant

58
Q

Issues caused by multi-user databases?

A

Race conditions

Deadlocks

Data corruption

Loss of Isolation

59
Q

How to solve issues caused by multi-user databases?

A

Locking mechanisms

Different isolation levels

Atomic transactions

60
Q

What is electronic data interchange?

A

The computer-to-computer exchange of documents such as purchase orders, between two companies/ entities.

Replaces post or emails.

All docs must be in standard form so that a computer can understand them.