SQL Server

Cómo crear tablas en SQL Server (CREATE TABLE): IDENTITY, NOT NULL, auditoría y ejemplos prácticos

Publicado por J. Panduro hace 5 meses

Cómo crear tablas en SQL Server (CREATE TABLE): IDENTITY, NOT NULL, auditoría y ejemplos prácticos

Crear tablas no es solo definir columnas. En un entorno real, necesitas controlar identificadores automáticos, restricciones y trazabilidad de datos.


En este artículo aprenderás a usar CREATE TABLE en SQL Server de forma profesional, incluyendo:


  1. IDENTITY (autoincremental)
  2. NOT NULL vs NULL
  3. Campos de auditoría
  4. sp_columns, sp_tables, DROP TABLE
  5. Ejercicios prácticos


Estructura real de una tabla


En proyectos reales, una tabla suele incluir:


  1. 🔑Identificador único
  2. 📄 Datos principales
  3. 🕓 Auditoría (quién creó/modificó y cuándo)


Uso de IDENTITY (autoincremental)


IDENTITY permite que una columna genere valores automáticamente.

Ideal para claves primarias.


CREATE TABLE Usuarios (
Id INT IDENTITY(1,1),
Nombre VARCHAR(100)
);


Explicación:

  1. (1,1)→ empieza en 1 y aumenta de 1 en 1
  2. No necesitas insertar el Id manualmente


¿Por qué usarlo?


  1. Evita duplicados
  2. Automatiza IDs
  3. Mejora integridad de datos


NULL vs NOT NULL


NOT NULL


Obliga a que la columna tenga un valor.

Nombre VARCHAR(100) NOT NULL


Úsalo cuando el dato es obligatorio.


NULL


Permite valores vacíos.

Telefono VARCHAR(20) NULL


Regla práctica


  1. Usa NOT NULL en datos críticos
  2. Usa NULL en datos opcionales


Campos de auditoría


Esto marca la diferencia entre un sistema básico y uno serio.


  1. CreatedAt → fecha de creación
  2. UpdatedAt → última actualización
  3. CreatedBy → usuario creador
  4. UpdatedBy → usuario que modificó


Ejemplo completo


CREATE TABLE Usuarios (
Id INT IDENTITY(1,1) PRIMARY KEY,
Nombre VARCHAR(100) NOT NULL,
Email VARCHAR(150) NOT NULL,
Telefono VARCHAR(20) NULL,

CreatedAt DATETIME NOT NULL DEFAULT GETDATE(),
UpdatedAt DATETIME NULL,
CreatedBy VARCHAR(50) NOT NULL,
UpdatedBy VARCHAR(50) NULL
);


Ventajas

  1. Sabes quién creó/modificó registros
  2. Permite auditoría y trazabilidad


Ver estructura de la tabla


EXEC sp_columns 'Usuarios';



Listar tablas


EXEC sp_tables;


Eliminar tabla

DROP TABLE Usuarios;


Elimina todo (estructura + datos).



Ejercicio nivel básico


Crea una tabla Categorias con:


  1. Id autoincremental
  2. Nombre obligatorio
  3. Estado (activo/inactivo)


Solución


CREATE TABLE Categorias (
Id INT IDENTITY(1,1) PRIMARY KEY,
Nombre VARCHAR(100) NOT NULL,
Estado BIT NOT NULL
);


Ejercicio nivel intermedio


Crea una tabla productos con:

  1. Id autoincremental
  2. Nombre obligatorio
  3. Precio obligatorio
  4. Stock opcional
  5. Campos de auditoría

Luego:

  1. Verifica columnas
  2. Lista tablas


Solución


CREATE TABLE Productos (
Id INT IDENTITY(1,1) PRIMARY KEY,
Nombre VARCHAR(100) NOT NULL,
Precio DECIMAL(10,2) NOT NULL,
Stock INT NULL,

CreatedAt DATETIME NOT NULL DEFAULT GETDATE(),
UpdatedAt DATETIME NULL,
CreatedBy VARCHAR(50) NOT NULL,
UpdatedBy VARCHAR(50) NULL
);


EXEC sp_columns 'Productos';


Conclusión


Dominar CREATE TABLE en SQL Server va más allá de crear columnas. Implica diseñar estructuras sólidas, seguras y preparadas para sistemas reales.

El uso de IDENTITY, NOT NULL y campos de auditoría te lleva a un nivel profesional y te prepara para trabajar en proyectos reales.

Sobre el autor

J. Panduro es desarrollador de software y creador de HPanduDigital. Comparte contenido sobre Desarrollo Web, inteligencia artificial, y transformación digital, basado en experiencias reales y proyectos prácticos.

Buscar artículos

Escribe al menos 2 caracteres para buscar.