Saltar al contenido

Bases de datos

IGCSE Ciencias de la Computación · Tema 9

Entrenar
Lección de video para este tema Abrir la página de video
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
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

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.

Filas de pequeños cajones etiquetados en un catálogo de tarjetas de biblioteca
Un catálogo de tarjetas de biblioteca es una base de datos en papel — registros que puedes buscar y ordenar por índice
Filas de servidores en un centro de datos
Las bases de datos modernas a gran escala se almacenan en servidores dentro de centros de datos
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.

La tabla Estudiante donde cada fila está etiquetada como un registro, cada columna como un campo, y la columna StudentID resaltada como clave primaria
Cada fila es un registro y cada columna es un campo; la clave primaria (StudentID) es única para cada registro
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.

Tipos de campos: texto (un nombre), número (una edad), fecha/hora (un cumpleaños), booleano (sí/no)
Tipos de campos: texto, número, fecha/hora y booleano
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
Vocabulario Entrenar
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.)

Una comprobación de rango en un campo de edad acepta 16 pero rechaza 200
Una comprobación de rango acepta valores lógicos y rechaza el resto
Vocabulario Entrenar
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

  • SELECT indica qué campos mostrar.
  • FROM indica qué tabla utilizar.
  • WHERE establece una condición 条件, de modo que solo se muestran los registros coincidentes.
Una consulta SQL: SELECT name FROM students WHERE age > 15
SELECT selecciona campos, FROM nombra la tabla, WHERE establece la condición
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

  • SUM suma los valores de un campo numérico.
  • COUNT cuenta 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:

  1. FROM — qué tabla;
  2. WHERE — mantener solo los registros que cumplan la condición;
  3. SELECT — mostrar solo los campos elegidos;
  4. ORDER BY — poner los resultados en orden.
Cuatro pasos en orden: FROM (qué tabla), WHERE (mantener filas coincidentes), SELECT (mostrar campos elegidos), ORDER BY (ordenar resultados)
Lee una consulta SQL en este orden: FROM (qué tabla), WHERE (qué filas), SELECT (qué campos), ORDER BY (ordenar)

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í.

Explorar

SELECT … WHERE

Paso a paso por una consulta: DONDE filtra filas, SELECCIONAR selecciona columnas.

Vocabulario Entrenar
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.
  • COUNT cuenta los registros coincidentes; SUM suma un campo numérico.

Lecciones interactivas sobre este tema

Trátalo paso a paso, con ejercicios de verificación instantánea.

Exámenes Anteriores

Más temas en IGCSE Ciencias de la Computación

Iniciar sesión o crear cuenta

IGCSE, A-Level & AP