FR Français
Version: v2.6.0

create

Créer une nouvelle table.

create($table, $columns, $options)
Valeur de retour
[PDOStatement] Instance PDOStatement pour la requête exécutée.

Échantillon de base

Définissez chaque colonne comme un tableau. Medoo combinera les parties dans une définition de colonne complète.
$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
)

Colonne d’identité

Ajoutez "@id" comme élément de la liste pour définir une clé primaire entière auto-générée nommée id. Utilisez un autre nom après @, comme "@account_id", pour personnaliser le nom de la colonne. Medoo traduit le marqueur dans la définition adaptée au type de base de données actuel.
$database->create("account", [
	"@id",
	"email" => [
		"VARCHAR(255)",
		"NOT NULL"
	]
]);
Base de données Définition générée pour @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

Un seul marqueur d’identité est autorisé. La même colonne ne doit pas être déclarée également comme une définition de colonne ordinaire.

Avancé

Vous pouvez également transmettre des chaînes brutes en tant que définitions de colonnes pour des options supplémentaires. La syntaxe <column_name> est prise en charge comme raccourci pour la citation d'identifiant.
$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