Buscar..


Introducción

Se utiliza la sentencia CREATE TABLE para crear una nueva tabla en la base de datos. Una definición de tabla consiste en una lista de columnas, sus tipos y cualquier restricción de integridad.

Sintaxis

  • CREATE TABLE tableName ([ColumnName1] [datatype1] [, [ColumnName2] [datatype2] ...])

Parámetros

Parámetro Detalles
nombre de la tabla El nombre de las mesa
columnas Contiene una 'enumeración' de todas las columnas que tiene la tabla. Ver Crear una nueva tabla para más detalles.

Observaciones

Los nombres de las tablas deben ser únicos.

Crear una nueva tabla

Se puede crear una tabla básica de Employees , que contiene una identificación, y el nombre y apellido del empleado junto con su número de teléfono usando

CREATE TABLE Employees(
    Id int identity(1,1) primary key not null,
    FName varchar(20) not null,
    LName varchar(20) not null,
    PhoneNumber varchar(10) not null
);

Este ejemplo es específico de Transact-SQL.

CREATE TABLE crea una nueva tabla en la base de datos, seguida del nombre de la tabla, Employees

Esto es seguido por la lista de nombres de columna y sus propiedades, como la ID

Id int identity(1,1) not null
Valor Sentido
Id El nombre de la columna.
int es el tipo de datos
identity(1,1) indica que la columna tendrá valores generados automáticamente que comienzan en 1 y se incrementan en 1 para cada nueva fila.
primary key establece que todos los valores en esta columna tendrán valores únicos
not null Indica que esta columna no puede tener valores nulos.

Crear tabla desde seleccionar

Es posible que desee crear un duplicado de una tabla:

CREATE TABLE ClonedEmployees AS SELECT * FROM Employees;

Puede usar cualquiera de las otras características de una instrucción SELECT para modificar los datos antes de pasarlos a la nueva tabla. Las columnas de la nueva tabla se crean automáticamente de acuerdo con las filas seleccionadas.

CREATE TABLE ModifiedEmployees AS
SELECT Id, CONCAT(FName," ",LName) AS FullName FROM Employees
WHERE Id > 10;

Duplicar una tabla

Para duplicar una tabla, simplemente haga lo siguiente:

CREATE TABLE newtable LIKE oldtable; 
INSERT newtable SELECT * FROM oldtable;

CREAR MESA CON CLAVE EXTRANJERA

A continuación puede encontrar la tabla Employees con una referencia a la tabla Cities .

CREATE TABLE Cities(
    CityID INT IDENTITY(1,1) NOT NULL,
    Name VARCHAR(20) NOT NULL,
    Zip VARCHAR(10) NOT NULL
);

CREATE TABLE Employees(
    EmployeeID INT IDENTITY (1,1) NOT NULL,
    FirstName VARCHAR(20) NOT NULL,
    LastName VARCHAR(20) NOT NULL,
    PhoneNumber VARCHAR(10) NOT NULL,
    CityID INT FOREIGN KEY REFERENCES Cities(CityID)
);

Aquí podrías encontrar un diagrama de base de datos.

Diagrama de base de datos

La columna CityID de la tabla Employees hará referencia a la columna CityID de la tabla Cities . A continuación puede encontrar la sintaxis para hacer esto.

CityID INT FOREIGN KEY REFERENCES Cities(CityID)
Valor Sentido
CityID Nombre de la columna
int tipo de columna
FOREIGN KEY Hace la clave externa (opcional)
REFERENCES
Cities(CityID)
Hace la referencia
a la tabla Cities columna CityID

Importante: No pudo hacer una referencia a una tabla que no existe en la base de datos. Sea fuente para hacer primero la tabla Cities y luego la mesa Employees . Si lo haces vise versa, te lanzará un error.

Crear una tabla temporal o en memoria

PostgreSQL y SQLite

Para crear una tabla temporal local para la sesión:

CREATE TEMP TABLE MyTable(...);

servidor SQL

Para crear una tabla temporal local para la sesión:

CREATE TABLE #TempPhysical(...);

Para crear una tabla temporal visible para todos:

CREATE TABLE ##TempPhysicalVisibleToEveryone(...);

Para crear una tabla en memoria:

DECLARE @TempMemory TABLE(...);


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow