English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MySQLデータテーブル作成

MySQLテーブルを作成するには以下の情報が必要です:

  • テーブル名

  • テーブルのフィールド名

  • 各テーブルのフィールドを定義します

文法

以下はMySQLテーブルの作成に使用されるSQLの一般的な構文です:

CREATE TABLE table_name (column_name column_type);

以下の例では、w3codebox データベースにテーブル w を作成します3codebox_tbl:

CREATE TABLE IF NOT EXISTS `w3codebox_tbl`(
   `w3codebox_id` INT UNSIGNED AUTO_INCREMENT,
   `w3codebox_title` VARCHAR(100) NOT NULL,
   `w3codebox_author` VARCHAR(40) NOT NULL,
   `submission_date` DATE,
   PRIMARY KEY ( `w3codebox_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

例解:

  • フィールドを設定したい場合は NULL フィールドの属性を設定することができます NOT NULL、 データベース操作中に、このフィールドのデータがNULL 、エラーが発生します。

  • AUTO_INCREMENTは、列を自動増分の属性として定義し、一般的には主キーに使用されます。数値は自動的に増分されます1。

  • PRIMARY KEYキーワードは、列を主キーとして定義するために使用されます。複数の列を使用して主キーを定義することもできますが、列間はカンマで区切ります。

  • ENGINEでストレージエンジンを設定、CHARSETでエンコードを設定します。

コマンドプロンプトでテーブルを作成します

mysql> コマンドウィンドウを通じてMySQLデータベースのテーブルを作成することが非常に簡単です。SQL文を使用して CREATE TABLE を作成するための例です。

オンラインサンプル

以下はテーブル w3codebox_tbl サンプル:

root@host# mysql -u root -p
Enter password:*******
mysql> use w3codebox;
Database changed
mysql> CREATE TABLE w3codebox_tbl(
   -> w3codebox_id INT NOT NULL AUTO_INCREMENT,
   -> w3codebox_title VARCHAR(100) NOT NULL,
   -> w3codebox_author VARCHAR(40) NOT NULL,
   -> submission_date DATE,
   -> PRIMARY KEY ( w3codebox_id )
   -> ENGINE=InnoDB DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.16 sec)
mysql>

注意:MySQLのコマンド終了記号はセミコロン ; です。

注意: -> は改行符を示しています。コピーしないでください。

PHPスクリプトを使用してデータベーステーブルの作成

あなたは PHP の mysqli_query() 関数を使用して既存のデータベースのデータベーステーブルを作成できます。

この関数は2つのパラメータを持ち、成功時に TRUE を返し、それ以外の場合は FALSE を返します。

文法

mysqli_query(connection,query,resultmode);
パラメータ説明
connection必須。使用する MySQL 接続を指定します。
query必須。クエリ文字列を指定します。
resultmode

オプション。以下のいずれかの値が可能です:

  • MYSQLI_USE_RESULT(大量のデータを検索する場合はこのを使用してください)

  • MYSQLI_STORE_RESULT(デフォルト)

オンラインサンプル

以下の例では、PHPスクリプトを使用してデータベーステーブルを作成しています:

<?php
$dbhost = 'localhost';  // MySQLサーバーホストアドレス
$dbuser = 'root';            // MySQLユーザー名
$dbpass = '123456';          // MySQLユーザー名パスワード
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('接続失敗: ' . mysqli_error($conn));
}
echo '接続成功<br}} />';
$sql = "CREATE TABLE w3codebox_tbl( ".
        "w3codebox_id INT NOT NULL AUTO_INCREMENT, ".
        "w3codebox_title VARCHAR(100) NOT NULL, ".
        "w3codebox_author VARCHAR(40) NOT NULL, ".
        "submission_date DATE, ".
        "PRIMARY KEY ( w3codebox_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; ";
mysqli_select_db( $conn, 'w3codebox' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
    die('データテーブル作成失敗: ' . mysqli_error($conn));
}
echo "データテーブル作成成功\n";
mysqli_close($conn);
?>

実行成功後、コマンドラインでテーブル構造を確認できます: