PHPはMySQLテーブルを作成します

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

MySQLiとPDOを使用したMySQLテーブルの作成

CREATE TABLEステートメントは、MySQLテーブルの作成に使用されます。

「id」、「firstname」、「lastname」、「email」、「reg_date」の 5 つの列を持つ「MyGuests」というテーブルを作成します:

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
)ENGINE=InnoDB DEFAULT CHARSET=utf8

注:

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

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

1. NOT NULL - 各行には値が含まれている必要があり (空にすることはできません)、NULL 値は許可されません。

2. DEFAULT 値 - デフォルト値を設定します

3. UNSIGNED - 符号なしの数値タイプ、0 および正の数値を使用します

4. 新しい値が追加されるたびに、MySQL フィールドの値を自動的に増加するように設定します。レコードが追加されました

5. PRIMARY KEY - データテーブル内の各レコードの一意の識別子を設定します。 通常、列の PRIMARY KEY は AUTO_INCREMENT とともに使用される ID 値に設定されます。

6. ENGINE=InnoDB - データベース エンジンを InnoDB に設定します。これは MySQL 5.6 以降でデフォルトで使用されます。各 MySQL データ テーブルは、異なるストレージ エンジン (ストレージ エンジン) を使用して設定できます。MyISAM と InnoDB (デフォルト) の 2 つの主要なエンジンが使用されます。

7. DEFAULT CHARSET=utf8 - データベースのデフォルトの文字セットを utf8 に設定します

各テーブルには主キー (この列は「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);
 ?>

インスタンス (Pや)

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

テーブル作成の原則

データベーステーブルを作成する際には、一般的に以下の注意事項があります

1. テーブル名とフィールド名の対応は、命名規則に従う必要があります。構文と明確にする必要があります。 意味

3. フィールドのデータ型を指定します

4. フィールドが null かどうか、デフォルト値があるかどうかなどを指定します

5.主キーや外部キー、制約、インデックスなどのテーブル属性

6. 他のテーブルとの関係

は、スペースとチュートリアルの難易度によって制限されているため、ここではあまり説明しません。

phpMyAdminを使用して操作する前の章では、phpMyAdminを直接開き、コマンドを入力して新しいデータベースを作成し、データベースにクエリを実行できることを説明しました

ここでは、コマンドを使用して他の基本的な操作を実行することもできます。データベーステーブル上:

データベーステーブルの削除 - DROP TABLE db_name

テーブル名の変更 - ALTER TABLE db_name RENAME new_db_name



学び続ける
||
<?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(); ?>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜