<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://staging.moocwiki.org/index.php?action=history&amp;feed=atom&amp;title=English%3ADatabase_Fundamentals</id>
	<title>English:Database Fundamentals - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://staging.moocwiki.org/index.php?action=history&amp;feed=atom&amp;title=English%3ADatabase_Fundamentals"/>
	<link rel="alternate" type="text/html" href="https://staging.moocwiki.org/index.php?title=English:Database_Fundamentals&amp;action=history"/>
	<updated>2026-08-28T15:51:10Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in MOOCsWiki Staging</subtitle>
	<generator>MediaWiki 1.45.4</generator>
	<entry>
		<id>https://staging.moocwiki.org/index.php?title=English:Database_Fundamentals&amp;diff=47448&amp;oldid=prev</id>
		<title>Glanz: aiMOOC über GPT aiMOOC Action erstellt</title>
		<link rel="alternate" type="text/html" href="https://staging.moocwiki.org/index.php?title=English:Database_Fundamentals&amp;diff=47448&amp;oldid=prev"/>
		<updated>2026-08-28T08:45:03Z</updated>

		<summary type="html">&lt;p&gt;aiMOOC über GPT aiMOOC Action erstellt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{T}}&lt;br /&gt;
[[Category:English]]&lt;br /&gt;
[[Category:Database Fundamentals]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
A database is an organized collection of data that is stored so that it can be found, changed, protected, and reused efficiently. In workplaces, databases support tasks such as managing customers, stock, work orders, appointments, invoices, machine maintenance, training records, and quality checks. A [[English:Database management system|database management system]] (DBMS) is the software that defines, stores, queries, controls, and protects the data.&lt;br /&gt;
&lt;br /&gt;
This aiMOOC is designed for apprentices, trainees, and vocational students who need practical database skills for technical, commercial, administrative, logistics, and IT-related work. You will learn the concepts behind relational databases, practise core [[English:SQL|SQL]] operations, design small data models, and connect database quality with everyday workplace requirements.&lt;br /&gt;
&lt;br /&gt;
[[File:Sql database shortcut icon.png|300px|frameless|center]]&lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|https://www.youtube.com/watch?v=hRulZhTtUTg|500|center}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Why Databases Matter at Work ==&lt;br /&gt;
&lt;br /&gt;
Imagine a repair workshop. Staff need to know which customer owns a machine, which technician is assigned to a work order, which spare parts were used, whether a part is in stock, and whether the job has been invoiced. Keeping all of this in one long spreadsheet quickly creates duplicated data and inconsistent updates. A well-designed database separates different kinds of facts and links them through defined relationships.&lt;br /&gt;
&lt;br /&gt;
A database does more than store facts. A DBMS can enforce rules, coordinate simultaneous users, control permissions, support transactions, create backups, and answer questions with queries. This is why database skills are useful in professions ranging from industrial mechanics and retail logistics to office administration, software development, healthcare administration, and technical support.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Learning Objectives ==&lt;br /&gt;
&lt;br /&gt;
After working through this aiMOOC, you should be able to explain the difference between data, a database, and a DBMS; identify tables, rows, columns, keys, relationships, and constraints; create a simple relational data model; use basic SQL to create, read, update, and delete data; combine related tables with joins; explain the purpose of normalization; describe transaction safety and database security; and test a small database against a realistic workplace scenario.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Core Database Concepts =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Data, Information, Databases, and DBMS ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Data&amp;#039;&amp;#039;&amp;#039; are recorded facts such as a part number, quantity, date, customer name, or measured temperature. &amp;#039;&amp;#039;&amp;#039;Information&amp;#039;&amp;#039;&amp;#039; is data interpreted in context, such as “Part P-104 is below its reorder level.” A &amp;#039;&amp;#039;&amp;#039;database&amp;#039;&amp;#039;&amp;#039; stores related data in a structured form. A &amp;#039;&amp;#039;&amp;#039;DBMS&amp;#039;&amp;#039;&amp;#039; is the software layer used to create, manage, query, secure, and maintain databases.&lt;br /&gt;
&lt;br /&gt;
A database application normally has several layers. A user may work with a web page, desktop application, scanner, or mobile device. The application sends requests to the DBMS. The DBMS reads or changes stored data and returns results. Separating these responsibilities makes it easier to control access, validate data, and maintain the system.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Database Models ==&lt;br /&gt;
&lt;br /&gt;
Different database models suit different types of work. A [[English:Relational database|relational database]] organizes data into relations that are commonly represented as tables. A document database stores document-like structures, a key-value database retrieves values by keys, and a graph database focuses on nodes and relationships. This course concentrates on relational databases because they are widely used in business and vocational applications and because SQL is a common language for working with them.&lt;br /&gt;
&lt;br /&gt;
Choosing a model depends on requirements. You should ask what must be stored, how strongly the data are related, which consistency rules matter, what queries are required, how much data is expected, and which tools the organization can maintain.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= The Relational Model =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Tables, Rows, Columns, and Schemas ==&lt;br /&gt;
&lt;br /&gt;
A relational table describes one kind of entity or relationship. A table named &amp;#039;&amp;#039;&amp;#039;Customer&amp;#039;&amp;#039;&amp;#039; might contain columns such as customer_id, name, email, and phone. Each row represents one stored customer. Columns describe attributes and have defined data types.&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;schema&amp;#039;&amp;#039;&amp;#039; is the database blueprint: it describes structures such as tables, columns, keys, relationships, and constraints. The data stored at a particular moment are the current database state. Keeping the schema separate from individual records helps teams discuss design before entering real data.&lt;br /&gt;
&lt;br /&gt;
A realistic production schema can become much more complex than a training example. The MediaWiki schema below shows how a mature application can contain many connected tables.&lt;br /&gt;
&lt;br /&gt;
[[File:MediaWiki 1.41.0 database schema.png|500px|frameless|center]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Data Types and NULL ==&lt;br /&gt;
&lt;br /&gt;
A data type limits what can be stored in a column and often affects storage, validation, sorting, and calculations. Common categories include integers, decimal numbers, character strings, dates and times, and Boolean values. Exact type names differ between DBMS products.&lt;br /&gt;
&lt;br /&gt;
Choose types that match the business meaning. Store a quantity as a numeric type if you need arithmetic. Store a date as a date type if you need date comparisons. Do not use a text field merely because it seems flexible.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;NULL&amp;#039;&amp;#039;&amp;#039; represents a missing or unknown value. It is not the same as zero, an empty string, or the word “unknown.” Database queries often need special logic such as &amp;lt;code&amp;gt;IS NULL&amp;lt;/code&amp;gt; to test for it.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Keys and Relationships =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Primary Keys ==&lt;br /&gt;
&lt;br /&gt;
A [[English:Primary key|primary key]] is the selected column, or set of columns, used to identify each row uniquely in a table. A good primary key must be unique and cannot be NULL. For example, customer_id can identify a customer even if two customers have the same name.&lt;br /&gt;
&lt;br /&gt;
A key based on meaningful existing data is called a natural key. A generated identifier is often called a surrogate key. The choice should reflect stability, uniqueness, privacy, and how the database will be used.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Foreign Keys and Referential Integrity ==&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;foreign key&amp;#039;&amp;#039;&amp;#039; is a column or set of columns whose values refer to a candidate key, commonly the primary key, in another table. For example, work_order.customer_id can refer to customer.customer_id. This link allows a work order to be associated with the correct customer.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Referential integrity&amp;#039;&amp;#039;&amp;#039; means references remain valid. A DBMS can reject a work order that refers to a customer that does not exist. When referenced data is updated or deleted, the database design should define what is allowed, restricted, cascaded, or set to NULL.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Cardinality ==&lt;br /&gt;
&lt;br /&gt;
Relationships describe how many records can be associated. Common patterns are one-to-one, one-to-many, and many-to-many. A customer can have many work orders, while each work order belongs to one customer: this is one-to-many. A work order can use many parts, and one part can be used on many work orders: this is many-to-many.&lt;br /&gt;
&lt;br /&gt;
Many-to-many relationships are normally implemented with an additional junction table. For example, &amp;#039;&amp;#039;&amp;#039;WorkOrderPart&amp;#039;&amp;#039;&amp;#039; can contain work_order_id, part_id, and quantity_used.&lt;br /&gt;
&lt;br /&gt;
[[File:Entity Relationship Diagram Examples.png|500px|frameless|center]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Entity-Relationship Modeling =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== From Workplace Requirements to an ER Diagram ==&lt;br /&gt;
&lt;br /&gt;
An [[English:Entity–relationship model|entity-relationship model]] helps you translate workplace requirements into entities, attributes, and relationships before writing SQL. Start with nouns in the process: Customer, Machine, Technician, WorkOrder, Part. Then ask what facts belong to each entity and how the entities are connected.&lt;br /&gt;
&lt;br /&gt;
A useful ER model should show identifiers and cardinalities. It should also be reviewed with the people who understand the process. A technically elegant model can still fail if it does not match real work.&lt;br /&gt;
&lt;br /&gt;
[[File:SQL ERD Example.png|434px|frameless|center]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Example: Training Workshop Database ==&lt;br /&gt;
&lt;br /&gt;
Suppose a training workshop needs to record service jobs. A simple model could contain these entities:&lt;br /&gt;
&lt;br /&gt;
# [[English:Customer|Customer]]: customer_id, name, email, phone&lt;br /&gt;
# [[English:Machine|Machine]]: machine_id, customer_id, serial_number, model&lt;br /&gt;
# [[English:Technician|Technician]]: technician_id, name, specialization&lt;br /&gt;
# [[English:Work order|Work order]]: work_order_id, machine_id, technician_id, opened_on, status&lt;br /&gt;
# [[English:Part|Part]]: part_id, description, unit_price, stock_quantity&lt;br /&gt;
&lt;br /&gt;
The many-to-many relationship between work orders and parts can be resolved with a WorkOrderPart table. This table can also record quantity_used, because quantity is a fact about the relationship between a particular job and a particular part.&lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|https://www.youtube.com/watch?v=ztHopE5Wnpc|500|center}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Integrity and Constraints =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Why Integrity Rules Matter ==&lt;br /&gt;
&lt;br /&gt;
Database quality depends on rules that prevent impossible or contradictory states. Constraints move some validation into the database so that the rule applies regardless of which application is writing the data.&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;NOT NULL&amp;#039;&amp;#039;&amp;#039; constraint requires a value. A &amp;#039;&amp;#039;&amp;#039;UNIQUE&amp;#039;&amp;#039;&amp;#039; constraint prevents duplicate values in a defined column or column set. A &amp;#039;&amp;#039;&amp;#039;CHECK&amp;#039;&amp;#039;&amp;#039; constraint can enforce a condition such as quantity &amp;gt;= 0 where supported. A &amp;#039;&amp;#039;&amp;#039;PRIMARY KEY&amp;#039;&amp;#039;&amp;#039; combines row identity with uniqueness and non-nullability. A &amp;#039;&amp;#039;&amp;#039;FOREIGN KEY&amp;#039;&amp;#039;&amp;#039; enforces a permitted reference between tables.&lt;br /&gt;
&lt;br /&gt;
Constraints should represent real business rules. If a workshop allows negative stock temporarily during stocktaking, a rule that forbids every negative quantity may conflict with the real process. Good database design requires both technical knowledge and careful requirements analysis.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= SQL Fundamentals =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== What SQL Does ==&lt;br /&gt;
&lt;br /&gt;
[[English:SQL|Structured Query Language]] is used with relational database systems to define structures, query data, insert records, change records, delete records, control access, and manage transactions. SQL has standardized foundations, but products such as PostgreSQL, MySQL, MariaDB, SQLite, Oracle Database, and Microsoft SQL Server also have product-specific features.&lt;br /&gt;
&lt;br /&gt;
[[File:SQL.png|500px|frameless|center]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Creating Tables ==&lt;br /&gt;
&lt;br /&gt;
The following simplified example uses common SQL syntax. Exact details can vary by DBMS.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
CREATE TABLE customer (&lt;br /&gt;
    customer_id INTEGER PRIMARY KEY,&lt;br /&gt;
    name VARCHAR(100) NOT NULL,&lt;br /&gt;
    email VARCHAR(255) UNIQUE&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE work_order (&lt;br /&gt;
    work_order_id INTEGER PRIMARY KEY,&lt;br /&gt;
    customer_id INTEGER NOT NULL,&lt;br /&gt;
    status VARCHAR(30) NOT NULL,&lt;br /&gt;
    opened_on DATE NOT NULL,&lt;br /&gt;
    FOREIGN KEY (customer_id) REFERENCES customer(customer_id)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The schema makes the relationship explicit: every stored work order must refer to an existing customer unless the design is changed to permit a missing customer reference.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== CRUD Operations ==&lt;br /&gt;
&lt;br /&gt;
CRUD is a useful workplace shorthand for &amp;#039;&amp;#039;&amp;#039;Create, Read, Update, Delete&amp;#039;&amp;#039;&amp;#039;. SQL commonly implements these actions with &amp;lt;code&amp;gt;INSERT&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SELECT&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;UPDATE&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
INSERT INTO customer (customer_id, name, email)&lt;br /&gt;
VALUES (101, &amp;#039;Alex Rivera&amp;#039;, &amp;#039;alex@example.org&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
SELECT customer_id, name, email&lt;br /&gt;
FROM customer&lt;br /&gt;
ORDER BY name;&lt;br /&gt;
&lt;br /&gt;
UPDATE work_order&lt;br /&gt;
SET status = &amp;#039;completed&amp;#039;&lt;br /&gt;
WHERE work_order_id = 5001;&lt;br /&gt;
&lt;br /&gt;
DELETE FROM customer&lt;br /&gt;
WHERE customer_id = 101;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Before changing or deleting production data, verify the selection condition and follow workplace procedures for authorization, transactions, backups, and testing. A missing or incorrect &amp;lt;code&amp;gt;WHERE&amp;lt;/code&amp;gt; condition can affect many rows.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Filtering, Sorting, and Aggregation ==&lt;br /&gt;
&lt;br /&gt;
A &amp;lt;code&amp;gt;WHERE&amp;lt;/code&amp;gt; clause filters rows. &amp;lt;code&amp;gt;ORDER BY&amp;lt;/code&amp;gt; sorts results. Aggregate functions such as &amp;lt;code&amp;gt;COUNT&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SUM&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;AVG&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;MIN&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;MAX&amp;lt;/code&amp;gt; summarize groups of rows. &amp;lt;code&amp;gt;GROUP BY&amp;lt;/code&amp;gt; defines those groups.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SELECT status, COUNT(*) AS number_of_orders&lt;br /&gt;
FROM work_order&lt;br /&gt;
GROUP BY status&lt;br /&gt;
ORDER BY status;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This type of query can support a workshop dashboard by showing how many work orders are open, waiting for parts, or completed.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Joins ==&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;join&amp;#039;&amp;#039;&amp;#039; combines related rows from multiple tables. An inner join returns matching rows according to the join condition.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SELECT w.work_order_id,&lt;br /&gt;
       w.status,&lt;br /&gt;
       c.name&lt;br /&gt;
FROM work_order AS w&lt;br /&gt;
JOIN customer AS c&lt;br /&gt;
  ON w.customer_id = c.customer_id&lt;br /&gt;
ORDER BY w.work_order_id;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The join works because the foreign key in work_order corresponds to the customer key. A left outer join is useful when you want all rows from the left table even if no matching row exists on the right.&lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|https://www.youtube.com/watch?v=HXV3zeQKqGY|500|center}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Normalization =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Why Normalize Data ==&lt;br /&gt;
&lt;br /&gt;
[[English:Database normalization|Normalization]] is a systematic way to organize relational data so that each fact is stored in an appropriate place and unwanted redundancy is reduced. Poorly organized data can cause update, insertion, and deletion anomalies.&lt;br /&gt;
&lt;br /&gt;
Suppose one work-order sheet stores customer name, customer phone, machine serial number, technician name, and several part columns in every job row. If a customer changes a phone number, many rows may need to be edited. If one copy is missed, the database becomes inconsistent.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== First, Second, and Third Normal Form ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First normal form (1NF)&amp;#039;&amp;#039;&amp;#039; requires a relational structure without repeating groups and with values appropriate to individual attributes. Instead of columns Part1, Part2, and Part3, use rows in a related WorkOrderPart table.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Second normal form (2NF)&amp;#039;&amp;#039;&amp;#039; builds on 1NF and removes partial dependency on part of a composite candidate key. This matters when a key contains more than one column. If a table has only a single-column candidate key, partial dependency on part of that key cannot occur.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Third normal form (3NF)&amp;#039;&amp;#039;&amp;#039; builds on 2NF and removes certain dependencies of non-key attributes on other non-key attributes. In practical terms, store each independent business fact in the table that represents the thing it describes.&lt;br /&gt;
&lt;br /&gt;
Normalization is not a goal by itself. The purpose is a design that preserves meaning, supports integrity, and is maintainable. Performance needs may later justify carefully controlled denormalization, but that decision should be measured and documented.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Transactions and Reliability =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Transactions ==&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;transaction&amp;#039;&amp;#039;&amp;#039; is a logical unit of work that should be completed in a controlled way. Imagine issuing a spare part to a work order. The system may need to reduce stock and also create a stock-movement record. If one change succeeds and the other fails, the data can become unreliable. A transaction lets the DBMS treat related changes as one unit.&lt;br /&gt;
&lt;br /&gt;
Many transactional systems aim to provide the ACID properties:&lt;br /&gt;
&lt;br /&gt;
# [[English:Atomicity|Atomicity]]: all operations in the transaction succeed as a unit or the transaction is rolled back.&lt;br /&gt;
# [[English:Consistency|Consistency]]: a successful transaction takes the database from one valid state to another according to defined rules.&lt;br /&gt;
# [[English:Isolation|Isolation]]: concurrent transactions are controlled so their interactions do not produce unacceptable results.&lt;br /&gt;
# [[English:Durability|Durability]]: once a transaction is committed, its result survives later failures according to the guarantees of the system.&lt;br /&gt;
&lt;br /&gt;
Transaction behavior depends on the DBMS, storage engine, configuration, and isolation level. In practical work, you should know where transactions begin and end and how your application handles errors.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Backups and Recovery ==&lt;br /&gt;
&lt;br /&gt;
A backup is useful only if it can support recovery. Organizations should define what must be backed up, how often, where copies are stored, how they are protected, and how restoration is tested. Recovery plans should consider both data loss and downtime.&lt;br /&gt;
&lt;br /&gt;
A sound routine includes documented backup schedules, protected backup storage, retention rules, restore tests, and responsible persons. For important systems, disaster recovery should be tested rather than assumed.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Security, Privacy, and Safe Use =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Least Privilege and Access Control ==&lt;br /&gt;
&lt;br /&gt;
Users and applications should receive only the permissions they need. A reporting account may need read access without permission to delete tables. Administrative accounts should not be used for routine application work.&lt;br /&gt;
&lt;br /&gt;
Authentication verifies who a user is; authorization determines what that user may do. Database roles can group permissions by job function. Access decisions should follow organizational policy and applicable data-protection requirements.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Protecting Data and Queries ==&lt;br /&gt;
&lt;br /&gt;
Sensitive data should be protected in storage, in backups, and during transmission where appropriate. Passwords should not be stored as readable plain text. Secrets such as database credentials should be handled with approved secret-management methods rather than placed directly in source code.&lt;br /&gt;
&lt;br /&gt;
Applications should use parameterized queries or prepared statements for user-provided values. Building SQL commands by directly concatenating untrusted input can create [[English:SQL injection|SQL injection]] vulnerabilities. Input validation is still useful, but it does not replace correct query parameterization.&lt;br /&gt;
&lt;br /&gt;
Logging and monitoring can help identify errors, misuse, and unusual access. Logs themselves may contain sensitive information and therefore also require protection and retention rules.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Performance and Maintainability =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Indexes ==&lt;br /&gt;
&lt;br /&gt;
An &amp;#039;&amp;#039;&amp;#039;index&amp;#039;&amp;#039;&amp;#039; is a data structure that can help a DBMS locate rows efficiently for certain queries. Indexes are often useful on columns used for lookups, joins, sorting, or filtering. However, each index consumes storage and can add work to inserts, updates, and deletes.&lt;br /&gt;
&lt;br /&gt;
Do not add indexes blindly. Measure important queries, inspect execution plans where your DBMS supports them, and test with realistic data volumes.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Documentation and Naming ==&lt;br /&gt;
&lt;br /&gt;
Database work is collaborative. Use consistent names, document the purpose of tables and columns, record important business rules, and keep schema changes under controlled change management. A data dictionary can describe each field, type, meaning, valid values, source, and sensitivity.&lt;br /&gt;
&lt;br /&gt;
Clear documentation helps new trainees understand the system and reduces the risk of unsafe changes.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= A Vocational Database Workflow =&lt;br /&gt;
&lt;br /&gt;
A practical database task can be organized into a repeatable workflow.&lt;br /&gt;
&lt;br /&gt;
# [[English:Requirements analysis|Requirements analysis]]: Talk to users, observe the process, identify decisions and reports, and list the data that must be stored.&lt;br /&gt;
# [[English:Data modeling|Data modeling]]: Identify entities, attributes, keys, relationships, and cardinalities.&lt;br /&gt;
# [[English:Database normalization|Database normalization]]: Check whether facts are duplicated or dependent on the wrong key.&lt;br /&gt;
# [[English:Database schema|Database schema]]: Translate the model into tables, data types, keys, and constraints.&lt;br /&gt;
# [[English:SQL|SQL]]: Implement queries and data-change operations needed by the process.&lt;br /&gt;
# [[English:Software testing|Software testing]]: Test normal cases, invalid data, missing data, concurrent activity, and recovery procedures.&lt;br /&gt;
# [[English:Database security|Database security]]: Define roles, permissions, secure connections, and protection for sensitive data.&lt;br /&gt;
# [[English:Database maintenance|Database maintenance]]: Monitor performance, back up data, test restores, document changes, and review the design as requirements evolve.&lt;br /&gt;
&lt;br /&gt;
In vocational practice, quality is shown not only by whether a query runs, but by whether the database represents the real process accurately, protects data, rejects invalid states, and remains understandable to the next person who must maintain it.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Troubleshooting Checklist =&lt;br /&gt;
&lt;br /&gt;
When a database task does not work, diagnose the problem systematically. Check whether you are connected to the correct database; verify table and column names; inspect data types; confirm primary and foreign key values; test the &amp;lt;code&amp;gt;SELECT&amp;lt;/code&amp;gt; condition before an &amp;lt;code&amp;gt;UPDATE&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt;; read the DBMS error message carefully; reduce a complex query to smaller parts; check permissions; and compare the current schema with the documentation.&lt;br /&gt;
&lt;br /&gt;
For performance problems, first identify the slow operation and reproduce it safely. Then inspect row counts, filters, joins, indexes, execution plans, locking, and workload. Measure before and after changes.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Interactive Tasks =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Quiz: Test Your Knowledge ==&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;What is the main role of a DBMS?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(To manage and control database data)&lt;br /&gt;
(!To replace every business application)&lt;br /&gt;
(!To store only unstructured pictures)&lt;br /&gt;
(!To create network cables)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Which database object usually stores records in rows and columns?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Table)&lt;br /&gt;
(!Router)&lt;br /&gt;
(!Folder)&lt;br /&gt;
(!Printer)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;What must be true of a primary key value?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(It uniquely identifies a row)&lt;br /&gt;
(!It is always a customer name)&lt;br /&gt;
(!It must contain a date)&lt;br /&gt;
(!It may freely duplicate another key)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;What is the purpose of a foreign key?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(To connect related rows between tables)&lt;br /&gt;
(!To encrypt a backup)&lt;br /&gt;
(!To sort every query automatically)&lt;br /&gt;
(!To replace all indexes)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Which SQL command is mainly used to retrieve rows?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(SELECT)&lt;br /&gt;
(!DELETE)&lt;br /&gt;
(!DROP)&lt;br /&gt;
(!UPDATE)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Which SQL clause filters rows according to a condition?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(WHERE)&lt;br /&gt;
(!VALUES)&lt;br /&gt;
(!CREATE)&lt;br /&gt;
(!COMMIT)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Why is a junction table commonly used?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(To represent a many-to-many relationship)&lt;br /&gt;
(!To store every password in plain text)&lt;br /&gt;
(!To remove all foreign keys)&lt;br /&gt;
(!To avoid defining a schema)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;What is a central purpose of normalization?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(To reduce harmful redundancy and anomalies)&lt;br /&gt;
(!To make every table contain one column)&lt;br /&gt;
(!To remove all business rules)&lt;br /&gt;
(!To replace SQL with a spreadsheet)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Which ACID property means a transaction is completed as a unit or rolled back?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Atomicity)&lt;br /&gt;
(!Durability)&lt;br /&gt;
(!Indexing)&lt;br /&gt;
(!Authorization)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Which practice helps prevent SQL injection in application queries?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Parameterized queries)&lt;br /&gt;
(!String concatenation of untrusted input)&lt;br /&gt;
(!Shared administrator passwords)&lt;br /&gt;
(!Removing all input checks)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Memory Game ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;memo-quiz&amp;quot;&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| Schema || Blueprint of database structures and rules&lt;br /&gt;
|-&lt;br /&gt;
| Tuple || One row in a relation&lt;br /&gt;
|-&lt;br /&gt;
| Primary key || Chosen identifier that uniquely distinguishes a row&lt;br /&gt;
|-&lt;br /&gt;
| Foreign key || Attribute that references a key in another table&lt;br /&gt;
|-&lt;br /&gt;
| Transaction || Controlled logical unit of database work&lt;br /&gt;
|-&lt;br /&gt;
| Index || Structure that can speed up selected data access&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Drag and Drop ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;lueckentext-quiz&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Match the correct terms.&lt;br /&gt;
! Topic&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Retrieve selected rows&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| SELECT&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Add a new row&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| INSERT&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Change existing rows&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| UPDATE&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Remove selected rows&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| DELETE&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Finish a successful transaction&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| COMMIT&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Match each workplace action to the SQL command that normally performs it. Then explain why an UPDATE or DELETE should be tested carefully before it is run on production data.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Crossword Puzzle ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;kreuzwort-quiz&amp;quot;&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| Schema || What word means the blueprint of database structures?&lt;br /&gt;
|-&lt;br /&gt;
| Tuple || What relational term can describe one row?&lt;br /&gt;
|-&lt;br /&gt;
| Constraint || What rule can the DBMS enforce on stored data?&lt;br /&gt;
|-&lt;br /&gt;
| Index || What structure can improve certain lookup operations?&lt;br /&gt;
|-&lt;br /&gt;
| Transaction || What unit groups related database operations?&lt;br /&gt;
|-&lt;br /&gt;
| Normalization || What design process reduces harmful redundancy?&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== LearningApps ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://learningapps.org/index.php?s=Database+Fundamentals &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Cloze Text ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;quiz display=simple&amp;gt;&lt;br /&gt;
{&amp;#039;&amp;#039;&amp;#039;Complete the text.&amp;#039;&amp;#039;&amp;#039;&amp;lt;br&amp;gt;&lt;br /&gt;
|type=&amp;quot;{}&amp;quot;}&lt;br /&gt;
A database management system is commonly abbreviated as { DBMS }. In a relational database, data are organized into { tables }. A selected identifier for each row is a { primary key }. A reference to a key in another table is a { foreign key }. SQL retrieves rows mainly with the { SELECT } command. A many-to-many relationship is commonly resolved with a { junction table }. The design process that reduces harmful redundancy is called { normalization }. A controlled unit of database work is a { transaction }. The ACID property that protects committed results is { durability }. Application code should use { parameterized queries } for untrusted values.&lt;br /&gt;
&amp;lt;/quiz&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Open-Ended Tasks =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Easy ===&lt;br /&gt;
# [[English:Workplace Data Hunt|Workplace Data Hunt]]: Identify five examples of data used in your training company, school workshop, or a realistic workplace and explain who creates each item and who needs it.&lt;br /&gt;
# [[English:Table Sketch|Table Sketch]]: Draw a simple table for tools, products, customers, or machines with at least six columns, suitable data types, and one proposed primary key.&lt;br /&gt;
# [[English:SQL Reading Practice|SQL Reading Practice]]: Find three SELECT examples in this course, rewrite each in your own words, and describe the result you expect before running it.&lt;br /&gt;
# [[English:Database Interview|Database Interview]]: Interview a trainer, supervisor, or classmate about one information problem at work and summarize which data would need to be stored to solve it.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Standard ===&lt;br /&gt;
# [[English:ER Diagram Project|ER Diagram Project]]: Design an ER diagram for a small repair workshop, store, warehouse, salon, training center, or similar workplace with at least five entities and clearly marked relationships.&lt;br /&gt;
# [[English:CRUD Practice Database|CRUD Practice Database]]: Create a small practice database in a DBMS approved for your course and demonstrate one safe INSERT, SELECT, UPDATE, and DELETE operation using non-sensitive sample data.&lt;br /&gt;
# [[English:Data Quality Investigation|Data Quality Investigation]]: Build a deliberately flawed table with duplicated facts, then identify update, insertion, and deletion anomalies and redesign it to reduce the problems.&lt;br /&gt;
# [[English:Database Tutorial Video|Database Tutorial Video]]: Produce a three-to-five-minute tutorial video or screen recording that explains primary keys, foreign keys, and one example join using your own practice database.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Advanced ===&lt;br /&gt;
# [[English:Normalization Case Study|Normalization Case Study]]: Take a realistic unnormalized workplace dataset and transform it step by step toward third normal form, documenting functional dependencies and each design decision.&lt;br /&gt;
# [[English:Transaction Experiment|Transaction Experiment]]: In a safe training database, design a two-step operation such as stock issue plus movement logging, test commit and rollback behavior, and explain what could go wrong without a transaction.&lt;br /&gt;
# [[English:Database Security Review|Database Security Review]]: Analyze a fictional database application for excessive permissions, weak credential handling, unsafe query construction, missing backups, and sensitive logging, then propose prioritized improvements.&lt;br /&gt;
# [[English:Database Prototype Project|Database Prototype Project]]: Plan, implement, test, and document a small database solution for a vocational process, including requirements, ER model, schema, constraints, sample data, useful queries, role concept, backup plan, and a short user demonstration.&lt;br /&gt;
&lt;br /&gt;
{{:Open Task - Create a MOOC}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Learning Assessment =&lt;br /&gt;
&lt;br /&gt;
# [[English:Requirements-to-Schema Assessment|Requirements-to-Schema Assessment]]: Given a new workplace process, identify entities, attributes, candidate keys, relationships, and constraints, then justify how your schema represents the process.&lt;br /&gt;
# [[English:Integrity Assessment|Integrity Assessment]]: Analyze a database with duplicated identifiers, orphaned references, and invalid quantities, explain which integrity rules are missing, and propose specific constraints or process controls.&lt;br /&gt;
# [[English:Query Transfer Assessment|Query Transfer Assessment]]: Write SQL that answers a new business question requiring filtering, a join, and aggregation, then explain how you verified that the result is complete and correct.&lt;br /&gt;
# [[English:Normalization Assessment|Normalization Assessment]]: Compare two alternative designs for the same dataset, identify likely anomalies, and defend which design is easier to maintain and why.&lt;br /&gt;
# [[English:Transaction Reasoning Assessment|Transaction Reasoning Assessment]]: Explain how a multi-step stock or payment process should behave if one step fails and connect your design to atomicity, consistency, isolation, and durability.&lt;br /&gt;
# [[English:Security and Recovery Assessment|Security and Recovery Assessment]]: Create a risk-based plan for database permissions, parameterized queries, backup frequency, restore testing, and logging for a small vocational organization.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Evidence of Learning =&lt;br /&gt;
&lt;br /&gt;
; Knowledge&lt;br /&gt;
: You can explain databases, DBMS functions, relational structures, data types, keys, relationships, normalization, SQL operations, transactions, indexes, security, and recovery in clear workplace language.&lt;br /&gt;
&lt;br /&gt;
; Skills&lt;br /&gt;
: You can turn requirements into a data model, define tables and constraints, write and test core SQL, join related data, diagnose basic errors, normalize a small design, and apply safe working practices.&lt;br /&gt;
&lt;br /&gt;
; Products&lt;br /&gt;
: Strong evidence may include an ER diagram, documented schema, SQL script, sample dataset, query results, test protocol, data dictionary, security plan, backup-and-restore checklist, and short demonstration.&lt;br /&gt;
&lt;br /&gt;
; Transfer achievements&lt;br /&gt;
: You can apply database principles to a new vocational context, explain design trade-offs to non-specialists, identify risks in an unfamiliar schema, and justify improvements using both business requirements and technical evidence.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= OERs on the Topic =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://en.m.wikipedia.org/wiki/Database &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Open educational resources can help you practise beyond this course:&lt;br /&gt;
# [https://www.khanacademy.org/computing/computer-programming/sql Khan Academy: Intro to SQL] offers interactive practice in querying and managing relational data.&lt;br /&gt;
# [https://en.wikiversity.org/wiki/Database_Fundamentals Wikiversity: Database Fundamentals] provides openly accessible learning material and activities.&lt;br /&gt;
# [https://en.wikipedia.org/wiki/Relational_model Wikipedia: Relational model] provides background on relations, keys, and relational operations.&lt;br /&gt;
# [https://en.wikipedia.org/wiki/Database_normalization Wikipedia: Database normalization] provides further detail on normal forms.&lt;br /&gt;
# [https://en.wikipedia.org/wiki/ACID Wikipedia: ACID] explains atomicity, consistency, isolation, and durability.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Linked Learning Areas =&lt;br /&gt;
&lt;br /&gt;
{| align=center&lt;br /&gt;
{{:D-Tab}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[English:Database Fundamentals|Database Fundamentals]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# [[English:Database|Database]]&lt;br /&gt;
# [[English:Database management system|Database management system]]&lt;br /&gt;
# [[English:Relational database|Relational database]]&lt;br /&gt;
# [[English:Relational model|Relational model]]&lt;br /&gt;
# [[English:Database schema|Database schema]]&lt;br /&gt;
# [[English:Entity–relationship model|Entity–relationship model]]&lt;br /&gt;
# [[English:Primary key|Primary key]]&lt;br /&gt;
# [[English:Foreign key|Foreign key]]&lt;br /&gt;
# [[English:SQL|SQL]]&lt;br /&gt;
# [[English:Database normalization|Database normalization]]&lt;br /&gt;
# [[English:Database transaction|Database transaction]]&lt;br /&gt;
# [[English:Database security|Database security]]&lt;br /&gt;
# [[English:Database index|Database index]]&lt;br /&gt;
# [[English:Backup|Backup]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:English]]&lt;br /&gt;
[[Category:Vocational Education]]&lt;br /&gt;
[[Category:Databases]]&lt;br /&gt;
[[Category:Database Management]]&lt;br /&gt;
[[Category:SQL]]&lt;br /&gt;
[[Category:Information Technology]]&lt;br /&gt;
[[Category:Computer Science]]&lt;br /&gt;
[[Category:Apprenticeship]]&lt;br /&gt;
[[Category:Database Fundamentals]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= aiMOOC Projects =&lt;br /&gt;
[[Category:AI_MOOC]] [[Category:GPT aiMOOC]]&lt;br /&gt;
{{MT}}&lt;/div&gt;</summary>
		<author><name>Glanz</name></author>
	</entry>
</feed>