| Los candidatos deben ser capaces de: | Notas y orientación |
|---|---|
| 1 Definir una base de datos de una sola tabla a partir de requisitos dados de almacenamiento de datos | • Incluyendo: – campos – registros – validación |
| 2 Sugerir tipos de datos básicos adecuados | • Incluyendo: – texto/alfanumérico – carácter – Booleano – entero – real – fecha/hora |
| 3 Entender el propósito de una clave primaria e identificar una clave primaria adecuada para una tabla de base de datos dada | |
| 4 Leer, comprender y completar scripts de lenguaje de consulta estructurado (SQL) para consultar datos almacenados en una única tabla de base de datos | • Limitado a: – SELECT – FROM – WHERE – ORDER BY DESCENDING – ORDER BY ASCENDING – SUM – COUNT – AND – OR • Identificación de la salida generada por una sentencia SQL que consultará los contenidos dados de una tabla de base de datos |
Bases de datos
IGCSE Ciencias de la Computación · Tema 9
8:17
Bases de datos
Antes de las computadoras, una biblioteca guardaba un cajón como este. Una tarjeta por libro, cada una conteniendo los mismos pocos hechos, todos ordenados — para que un bibliotecario pudiera encontrar cualquier libro…
Narración en inglés · Subtítulos en inglés + 中文 quemados en pantalla
Syllabus
Fuente: Plan de estudios Cambridge International
9.1
¿Qué es una base de datos?
Una base de datos 数据库 es un almacén organizado de datos, diseñado para que sea fácil buscar, ordenar y actualizar la información. En el IGCSE trabajas con una base de datos de una sola tabla 单表数据库 — toda la información se mantiene en una única tabla.


9.2
Registros y campos
Una tabla de base de datos está compuesta por registros y campos.
- Un registro 记录 es una fila en la tabla — todos los datos sobre una misma entidad (por ejemplo, un estudiante).
- Un campo 字段 es una columna en la tabla — un dato específico que posee cada registro (por ejemplo, "Nombre").
| StudentID | FirstName | DateOfBirth | FormClass | FeesPaid |
|---|---|---|---|---|
| 1 | Amy | 14/03/2009 | 10A | VERDADERO |
| 2 | Ben | 02/11/2008 | 10B | FALSO |
Aquí cada fila es un registro, y cada columna es un campo.

9.3
Tipos de datos para los campos
Cada campo almacena un solo tipo de dato 数据类型. Debes elegir el tipo que mejor se adapte a los datos.

| Tipo de dato | Se usa para | Ejemplo |
|---|---|---|
| texto/alfanumérico 文本 | letras, dígitos y símbolos | "10A", "Amy" |
| carácter 字符 | un único carácter | 'M' |
| Booleano 布尔值 | uno de dos valores | VERDADERO / FALSO |
| entero 整数 | un número entero | 42 |
| real 实数 | un número con punto decimal | 3.5 |
| fecha/hora 日期时间 | una fecha o una hora | 14/03/2009 |
| Inglés | Chino | Pinyin |
|---|---|---|
| database/ˈdeɪtəbeɪs/ | 数据库 | shù jù kù |
| single-table database/ˈsɪŋɡl ˈteɪbl ˈdeɪtəbeɪs/ | 单表数据库 | dān biǎo shù jù kù |
| record/ˈrekɔːd/ | 记录 | jì lù |
| field/fiːld/ | 字段 | zì duàn |
| data type/ˈdeɪtə taɪp/ | 数据类型 | shù jù lèi xíng |
| text/alphanumeric/tekst ˌælfənjuːˈmerɪk/ | 文本 | wén běn |
| character/ˈkærɪktə/ | 字符 | zì fú |
| Boolean/ˈbuːlɪən/ | 布尔值 | bù ěr zhí |
| integer/ˈɪntɪdʒə/ | 整数 | zhěng shù |
| real/rɪəl/ | 实数 | shí shù |
| date/time/deɪt taɪm/ | 日期时间 | rì qī shí jiān |
| primary key/ˈpraɪməri kiː/ | 主键 | zhǔ jiàn |
| unique/juːˈniːk/ | 唯一的 | wéi yī de |
9.4
La clave primaria
Una clave primaria 主键 es un campo que contiene un valor único 唯一的 para cada registro. Ningún par de registros puede tener la misma clave primaria, lo que permite identificar exactamente un registro.
En la tabla anterior, StudentID es una buena clave primaria porque cada estudiante tiene un número diferente. Un campo como FormClass sería una mala clave primaria, porque muchos estudiantes comparten el mismo curso.
9.5
Validación en una base de datos
Cuando se introducen datos en una base de datos, las comprobaciones de validación 验证 aseguran que sean coherentes — por ejemplo, una comprobación de rango en un campo de edad, o una comprobación de presencia para evitar dejar un campo vacío. (Viste estas comprobaciones en el tema 7.)

| Inglés | Chino | Pinyin |
|---|---|---|
| validation/ˌvælɪˈdeɪʃn/ | 验证 | yàn zhèng |
| structured query language/ˈstrʌktʃəd ˈkwɪərɪ ˈlæŋɡwɪdʒ/ | 结构化查询语言 | jié gòu huà chá xún yǔ yán |
9.6
Lenguaje de consulta estructurado (SQL)
El Lenguaje de consulta estructurado 结构化查询语言 (SQL) es un lenguaje utilizado para consultar 查询 una base de datos — para extraer los registros deseados. Debes comprender y completar scripts SQL.
SELECT, FROM y WHERE
SELECTindica qué campos mostrar.FROMindica qué tabla utilizar.WHEREestablece una condición 条件, de modo que solo se muestran los registros coincidentes.

SELECT FirstName, FormClass
FROM Student
WHERE FeesPaid = TRUE;
Esto muestra el nombre y el curso de cada estudiante que ha pagado las cuotas.
Usa * para seleccionar todos los campos:
SELECT *
FROM Student
WHERE FormClass = '10A';
ORDER BY
ORDER BY ordena los resultados. Usa ASC para ascendente 升序 (menor primero, A→Z) o DESC para descendente 降序 (mayor primero, Z→A).
SELECT FirstName, DateOfBirth
FROM Student
ORDER BY DateOfBirth ASC;
AND y OR
Une condiciones con AND (ambas deben ser verdaderas) u OR (al menos una debe ser verdadera).
SELECT FirstName
FROM Student
WHERE FormClass = '10A' AND FeesPaid = FALSE;
SUM y COUNT
SUMsuma los valores de un campo numérico.COUNTcuenta cuántos registros coinciden.
SELECT COUNT(StudentID)
FROM Student
WHERE FeesPaid = FALSE;
Esto cuenta cuántos estudiantes no han pagado. SUM funciona de manera similar, pero suma un campo numérico en lugar de contar filas.
Calcular la salida
Para determinar la salida de un script SQL, léalo en este orden:
FROM— qué tabla;WHERE— mantener solo los registros que cumplan la condición;SELECT— mostrar solo los campos elegidos;ORDER BY— poner los resultados en orden.

Siguiendo estos pasos, puedes escribir exactamente qué filas y columnas devuelve la consulta.
Ejemplo resuelto. Una tabla Book tiene los campos Title, Author, Price e InStock. Escribe una consulta que muestre el título y el precio de cada libro de Orwell que esté en stock, ordenado del más barato al más caro.
SELECT Title, Price
FROM Book
WHERE Author = 'Orwell' AND InStock = TRUE
ORDER BY Price ASC;
Constrúyela en el orden de lectura: FROM nombra la tabla; WHERE mantiene solo los registros coincidentes, y como hay dos condiciones requieren AND; SELECT muestra solo los dos campos solicitados; ORDER BY … ASC los ordena. Los valores de texto van entre comillas, y solo los campos que pide la pregunta deben estar en SELECT — añadir Author simplemente porque se filtró por él es la forma más común de perder puntos aquí.
SELECT … WHERE
Paso a paso por una consulta: DONDE filtra filas, SELECCIONAR selecciona columnas.
| Inglés | Chino | Pinyin |
|---|---|---|
| query/ˈkwɪərɪ/ | 查询 | chá xún |
| condition/kənˈdɪʃn/ | 条件 | tiáo jiàn |
| ascending/əˈsendɪŋ/ | 升序 | shēng xù |
| descending/dɪˈsendɪŋ/ | 降序 | jiàng xù |
9.7
Consejos para el examen
- Un registro es una fila (todos los datos sobre una cosa); un campo es una columna (un elemento que tiene cada registro).
- Una clave primaria debe ser única para cada registro, por lo que identifica exactamente un registro (StudentID, no FormClass).
- Aprende las partes del SQL:
SELECT(qué campos),FROM(qué tabla),WHERE(la condición),ORDER BY(ordenar, ASC o DESC). - Lee una consulta en el orden FROM → WHERE → SELECT → ORDER BY para calcular su salida.
COUNTcuenta los registros coincidentes;SUMsuma un campo numérico.
Lecciones interactivas sobre este tema
Trátalo paso a paso, con ejercicios de verificación instantánea.