PHP MySQL テーブルの作成


データテーブルには一意の名前があり、行と列で構成されています。


MySQLi と PDO を使用して MySQL テーブルを作成する

CREATE TABLE 文は MySQL テーブルの作成に使用されます。

テーブルを作成する前に、使用する必要がありますuse myDB操作するデータベースを選択するために:

use myDB;

「MyGuests」という名前のテーブルを作成します。5つの列:"id", "firstname", "lastname", "email", "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 )

上記の表の注意事項:

データ型は、列が格納できるデータの種類を指定します。完全なデータ型については、データ型リファレンスマニュアルを参照してください。。

データ型を設定した後、各列に他のオプションの属性を指定できます:

  • NOT NULL - 各行は値を持つ必要があります(空は不可)。null 値は許可されません。
  • DEFAULT value - デフォルト値を設定します
  • UNSIGNED - 符号なし数値型を使用、0 および正の数
  • AUTO INCREMENT - 新規レコード追加時に MySQL フィールドの値を毎回自動的に1ずつ増加させます
  • PRIMARY KEY - データテーブル内の各レコードの一意の識別子を設定します。通常、列の PRIMARY KEY は ID 数値に設定され、AUTO_INCREMENT と一緒に使用されます。

各テーブルには主キーが必要です(ここでは "id" 列)。主キーは一意の値を含む必要があります。

以下の例は、PHP でテーブルを作成する方法を示しています:

例 (MySQLi - オブジェクト指向)

<?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(); ?>


例 (MySQLi - 手続き型)

<?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); ?>


例 (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; ?>

その他の拡張機能