UK Українська
Версія: v2.6.0

create

Створює нову таблицю.

create($table, $columns, $options)
Значення, що повертається
[PDOStatement] Екземпляр PDOStatement для виконаного запиту.

Базовий зразок

Визначте кожен стовпець як масив. Medoo об’єднає частини в повне визначення стовпця.
$database->create("account", [
	"id" => [
		"INT",
		"NOT NULL",
		"AUTO_INCREMENT",
		"PRIMARY KEY"
	],
	"first_name" => [
		"VARCHAR(30)",
		"NOT NULL"
	]
]);
CREATE TABLE IF NOT EXISTS account (
	id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
	first_name VARCHAR(30) NOT NULL
)

Стовпець ідентифікатора

Додайте "@id" як елемент списку, щоб визначити автоматично створюваний цілочисельний первинний ключ з іменем id. Щоб налаштувати назву стовпця, укажіть інше ім’я після @, наприклад "@account_id". Medoo перетворить маркер на визначення, відповідне поточному типу бази даних.
$database->create("account", [
	"@id",
	"email" => [
		"VARCHAR(255)",
		"NOT NULL"
	]
]);
База даних Визначення, створене для @id
MySQL / MariaDB id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY
PostgreSQL id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY
SQLite id INTEGER PRIMARY KEY AUTOINCREMENT
MSSQL id BIGINT IDENTITY(1,1) PRIMARY KEY
Oracle id NUMBER(19) GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY
Sybase id BIGINT IDENTITY PRIMARY KEY

Дозволено лише один маркер ідентифікатора. Цей самий стовпець не можна одночасно оголошувати звичайним визначенням стовпця.

Розширений приклад

Ви також можете передавати необроблені рядки як визначення стовпців для додаткових параметрів. Синтаксис <column_name> підтримується як скорочення для цитування ідентифікаторів.
$database->create("account", [
	"id" => [
		"INT",
		"NOT NULL",
		"AUTO_INCREMENT"
	],
	"email" => [
		"VARCHAR(70)",
		"NOT NULL",
		"UNIQUE"
	],
	"PRIMARY KEY (<id>)"
], [
	"ENGINE" => "MyISAM",
	"AUTO_INCREMENT" => 200
]);
CREATE TABLE IF NOT EXISTS account (
	id INT NOT NULL AUTO_INCREMENT,
	email VARCHAR(70) NOT NULL UNIQUE,
	PRIMARY KEY (`id`)
)
ENGINE = MyISAM,
AUTO_INCREMENT = 200