SQL
СОЗДАТЬ ТАБЛИЦУ
Поиск…
Вступление
Синтаксис
- CREATE TABLE tableName ([ColumnName1] [datatype1] [, [ColumnName2] [datatype2] ...])
параметры
параметр | подробности |
---|---|
TABLENAME | Название таблицы |
столбцы | Содержит «перечисление» всех столбцов таблицы. Подробнее см. « Создание новой таблицы» . |
замечания
Имена таблиц должны быть уникальными.
Создать новую таблицу
Таблица основных Employees
, содержащая идентификатор, а также имя и фамилию сотрудника вместе с их номером телефона могут быть созданы с использованием
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
);
Этот пример относится к Transact-SQL
CREATE TABLE
создает новую таблицу в базе данных, за которой следует имя таблицы, Employees
Затем следует список имен столбцов и их свойств, таких как идентификатор
Id int identity(1,1) not null
Значение | Имея в виду |
---|---|
Id | имя столбца. |
int | это тип данных. |
identity(1,1) | указывает, что столбец будет иметь автоматически сгенерированные значения, начиная с 1 и увеличивая на 1 для каждой новой строки. |
primary key | что все значения в этом столбце будут иметь уникальные значения |
not null | заявляет, что этот столбец не может иметь нулевые значения |
Создать таблицу из списка
Вы можете создать дубликат таблицы:
CREATE TABLE ClonedEmployees AS SELECT * FROM Employees;
Вы можете использовать любые другие функции оператора SELECT для изменения данных перед передачей их в новую таблицу. Столбцы новой таблицы автоматически создаются в соответствии с выбранными строками.
CREATE TABLE ModifiedEmployees AS
SELECT Id, CONCAT(FName," ",LName) AS FullName FROM Employees
WHERE Id > 10;
Дублировать таблицу
Чтобы дублировать таблицу, выполните следующие действия:
CREATE TABLE newtable LIKE oldtable;
INSERT newtable SELECT * FROM oldtable;
СОЗДАТЬ ТАБЛИЦУ С ИНОСТРАННЫМ КЛЮЧОМ
Ниже вы можете найти таблицу Employees
со ссылкой на таблицу 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)
);
Здесь вы можете найти диаграмму базы данных.
Столбец CityID
таблицы Employees
будут ссылаться на столбец CityID
таблицы Cities
. Ниже вы можете найти синтаксис, чтобы сделать это.
CityID INT FOREIGN KEY REFERENCES Cities(CityID)
Значение | Имея в виду |
---|---|
CityID | Название столбца |
int | тип столбца |
FOREIGN KEY | Делает внешний ключ (необязательно) |
REFERENCES Cities(CityID) | Делает ссылку к столбцу « Cities CityID |
Важно: вы не могли ссылаться на таблицу, которая не существует в базе данных. Будьте источником, чтобы сделать сначала таблицу Cities
а затем таблицу Employees
. Если вы сделаете это наоборот, это вызовет ошибку.
Создание временной или внутренней памяти
PostgreSQL и SQLite
Чтобы создать временную таблицу, локальную для сеанса:
CREATE TEMP TABLE MyTable(...);
SQL Server
Чтобы создать временную таблицу, локальную для сеанса:
CREATE TABLE #TempPhysical(...);
Чтобы создать временную таблицу для всех:
CREATE TABLE ##TempPhysicalVisibleToEveryone(...);
Чтобы создать таблицу в памяти:
DECLARE @TempMemory TABLE(...);