PHP MySQL crée une table de données
Une table de données a un nom unique et se compose de lignes et de colonnes.
Création d'une table MySQL à l'aide de MySQLi et PDO
L'instruction CREATE TABLE est utilisée pour créer une table MySQL.
Tutoriels vidéo recommandés : "Tutoriel MySQL" http://www.php.cn/course/list/51.html
Nous allons créer un tableau appelé "MyGuests" avec 5 colonnes : "id", "firstname", "lastname", "email" et "reg_date":
CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP )
Notes du tableau ci-dessus :
Le type de données spécifie le type de données que la colonne peut stocker. Pour les types de données complets, veuillez vous référer à notre Manuel de référence sur les types de données.
Après avoir défini le type de données, vous pouvez spécifier les propriétés d'autres options pour chaque colonne :
NON NULL - chaque ligne doit contenir une valeur (ne peut pas être vide) ), les valeurs nulles ne sont pas autorisées.
Valeur PAR DÉFAUT - Définissez la valeur par défaut
UNSIGNED - Utilisez un type numérique non signé, 0 et des nombres positifs
INCREMENT AUTO - Définissez la valeur du champ MySQL pour qu'elle augmente automatiquement de 1 à chaque fois qu'un nouvel enregistrement est ajouté
CLÉ PRIMAIRE - Définissez l'identifiant unique de chaque enregistrement dans le tableau de données. Habituellement, la CLÉ PRIMAIRE de la colonne est définie sur la valeur ID, qui est la même que Utilisé avec AUTO_INCREMENT.
Chaque table doit avoir une clé primaire (cette colonne est la colonne "id"), et la clé primaire doit contenir une valeur unique.
L'exemple suivant montre comment créer une table en PHP :
Exemple (MySQLi - Orienté Objet)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检测连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } // 使用 sql 创建数据表 $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP )"; if ($conn->query($sql) === TRUE) { echo "Table MyGuests created successfully"; } else { echo "创建数据表错误: " . $conn->error; } $conn->close(); ?>
Instance (MySQLi - Orienté procédure)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = mysqli_connect($servername, $username, $password, $dbname); // 检测连接 if (!$conn) { die("连接失败: " . mysqli_connect_error()); } // 使用 sql 创建数据表 $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP )"; if (mysqli_query($conn, $sql)) { echo "数据表 MyGuests 创建成功"; } else { echo "创建数据表错误: " . mysqli_error($conn); } mysqli_close($conn); ?>
Instance (PDO)
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // 设置 PDO 错误模式,用于抛出异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // 使用 sql 创建数据表 $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP )"; // 使用 exec() ,没有结果返回 $conn->exec($sql); echo "数据表 MyGuests 创建成功"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>