stamin4
  • whoami
  • HTB Academy
    • Introduction to Academy
    • Learning Process
    • Vulnerability Assessment
    • Web Requests
    • Introduction to Networking
    • Linux Fundamentals
    • Brief Intro to Hardware Attacks
    • Setting Up
    • Using the Metasploit Framework
    • Security Incident Reporting
    • Introduction to Web Applications
    • JavaScript Deobfuscation
    • Attacking Web Applications with Ffuf
    • Windows Fundamentals
    • File Inclusion
  • HTB Machines
    • Windows
      • 🟢Easy
      • 🟠Medium
      • 🔴Difficult
      • 🟣Insane
    • Linux
      • 🟢Easy
        • Cap
      • 🟠Medium
      • 🔴Difficult
      • 🟣Insane
  • OverTheWire
    • Bandit
      • Nivel 0
      • Nivel 1
      • Nivel 2
      • Nivel 3
      • Nivel 4
      • Nivel 5
      • Nivel 6
      • Nivel 7
      • Nivel 8
      • Nivel 9
      • Nivel 10
  • Base de datos
    • SQL
      • SELECT queries 101
      • Queries with constraints (Pt. 1)
      • Queries with constraints (Pt. 2)
      • Filtering and sorting Query results
      • Simple SELECT Queries
      • Multi-table queries with JOINs
      • OUTER JOINs
      • A short note on NULLs
      • Queries with expressions
      • Queries with aggregates (Pt. 1)
      • Queries with aggregates (Pt. 2)
      • Order of execution of a Query
      • Inserting rows
      • Updating rows
      • Deleting rows
      • Creating tables
      • Altering tables
      • Dropping tables
  • PortSwigger
    • Path Traversal
  • Dockerlabs
    • Trust
    • Firsthacking
    • Upload
Powered by GitBook
On this page
  1. Base de datos
  2. SQL

Creating tables

SQL Lesson 16

Cuando necesitamos nuevas entidades y relaciones en nuestra base de datos, creamos una tabla con CREATE TABLE.

CREATE TABLE IF NOT EXISTS mytable ( 
	column DataType TableConstraint DEFAULT default_value, 
	another_column DataType TableConstraint DEFAULT default_value, 
	… );

SI ya existe una tabla con el mismo nombre, veremos un error. Para omitirlo y evitar crear una tabla que ya existe, utilizamos la cláusula IF EXISTS.

Tipos de datos:

Tipo de dato
Descripción

INTEGER, BOOLEAN

Para números enteros. En algunas implementaciones, el booleano se representa tan solo con 1 o 0.

FLOAT, DOUBLE, REAL

Para decimales.

VARCHAR, CHAR, TEXT

Para cadenas de texto. En el caso de CHAR Y VARCHAR, es necesario especificar entre paréntesis cuál es la longitud máxima.

DATE, DATETIME

Para almacenar fechas.

BLOB

Para archivos binarios.

Restricciones:

Constraint
Descripción

PRIMARY KEY

Significa que los valores en esta columna son únicos y cada valor se puede usar para identificar una sola fila en esta tabla.

AUTOINCREMENT

El valor se completa automáticamente y se incrementa con cada inserción de fila.

UNIQUE

Los valores de esta columna tienen que ser únicos, por lo que no puede insertar otra fila con el mismo valor en esta columna.

CHECK (expression)

Permite chequear que los valores son válidos (a través de operadores lógicos)

FOREIGN KEY

Asegura que cada valor en esta columna corresponda a otro valor en una columna en otra tabla.


  1. Cree una nueva tabla llamada database con las siguientes columnas:

– Name: Una cadena (texto) que describe el nombre de la base de datos.

– Version: Un número (decimal) de la última versión de esta base de datos.

– Download_count: Un número entero de la cantidad de veces que se descargó esta base de datos

Esta tabla no tiene restricciones.

CREATE TABLE database (
    name VARCHAR(50),
    version FLOAT,
    download_count INT
);
PreviousDeleting rowsNextAltering tables

Last updated 1 year ago