IT Italiano
Versione: v2.6.0

create

Creare una nuova tabella.

create($table, $columns, $options)
Valore restituito
[PDOStatement] L'istanza PDOStatement per la query eseguita.

Campione di base

Definire ciascuna colonna come un array. Medoo combinerà le parti in una definizione di colonna completa.
$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
)

Colonna identity

Aggiungi "@id" come elemento dell’elenco per definire una chiave primaria intera generata automaticamente chiamata id. Usa un altro nome dopo @, ad esempio "@account_id", per personalizzare il nome della colonna. Medoo traduce il marcatore nella definizione appropriata per il tipo di database corrente.
$database->create("account", [
	"@id",
	"email" => [
		"VARCHAR(255)",
		"NOT NULL"
	]
]);
Database Definizione generata per @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

È consentito un solo marcatore identity. La stessa colonna non deve essere dichiarata anche come normale definizione di colonna.

Avanzato

Puoi anche passare stringhe grezze come definizioni di colonna per opzioni aggiuntive. La sintassi <column_name> è supportata come scorciatoia per le virgolette degli identificatori.
$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