Mysql-create-tables

提供:Dev Guides
移動先:案内検索

MySQLテーブルを作成する

まず、テーブル作成コマンドには次の詳細が必要です-

  • テーブルの名前
  • フィールドの名前
  • 各フィールドの定義

構文

これは、MySQLテーブルを作成する一般的なSQL構文です-

CREATE TABLE table_name (column_name column_type);

ここで、 TUTORIALS データベースに次のテーブルを作成します。

create table tutorials_tbl(
   tutorial_id INT NOT NULL AUTO_INCREMENT,
   tutorial_title VARCHAR(100) NOT NULL,
   tutorial_author VARCHAR(40) NOT NULL,
   submission_date DATE,
   PRIMARY KEY ( tutorial_id )
);

ここでは、いくつかの項目に説明が必要です-

  • このフィールドをNULLにしたくないため、フィールド属性 NOT NULL が使用されています。 したがって、ユーザーがNULL値を持つレコードを作成しようとすると、MySQLはエラーを発生させます。
  • フィールド属性 AUTO_INCREMENT は、MySQLにidフィールドに次に利用可能な番号を追加するよう指示します。
  • キーワード PRIMARY KEY は、列を主キーとして定義するために使用されます。 コンマで区切られた複数の列を使用して、主キーを定義できます。

コマンドプロンプトからのテーブルの作成

mysql>プロンプトからMySQLテーブルを簡単に作成できます。 SQLコマンド CREATE TABLE を使用して、テーブルを作成します。

*tutorials_tbl* を作成する例を次に示します-
root@host# mysql -u root -p
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> CREATE TABLE tutorials_tbl(
   -> tutorial_id INT NOT NULL AUTO_INCREMENT,
   -> tutorial_title VARCHAR(100) NOT NULL,
   -> tutorial_author VARCHAR(40) NOT NULL,
   -> submission_date DATE,
   -> PRIMARY KEY ( tutorial_id )
   -> );
Query OK, 0 rows affected (0.16 sec)
mysql>

-MySQLは、SQLコマンドの最後にセミコロン(;)を指定するまでコマンドを終了しません。

PHPスクリプトを使用したテーブルの作成

既存のデータベースに新しいテーブルを作成するには、PHP関数* mysql_query()*を使用する必要があります。 適切なSQLコマンドで2番目の引数を渡して、テーブルを作成します。

次のプログラムは、PHPスクリプトを使用してテーブルを作成する例です-

<html>
   <head>
      <title>Creating MySQL Tables</title>
   </head>

   <body>
      <?php
         $dbhost = 'localhost:3036';
         $dbuser = 'root';
         $dbpass = 'rootpassword';
         $conn = mysql_connect($dbhost, $dbuser, $dbpass);

         if(! $conn ) {
            die('Could not connect: ' . mysql_error());
         }
         echo 'Connected successfully<br/>';
         $sql = "CREATE TABLE tutorials_tbl( ".
            "tutorial_id INT NOT NULL AUTO_INCREMENT, ".
            "tutorial_title VARCHAR(100) NOT NULL, ".
            "tutorial_author VARCHAR(40) NOT NULL, ".
            "submission_date DATE, ".
            "PRIMARY KEY ( tutorial_id )); ";
         mysql_select_db( 'TUTORIALS' );
         $retval = mysql_query( $sql, $conn );

         if(! $retval ) {
            die('Could not create table: ' . mysql_error());
         }
         echo "Table created successfully\n";
         mysql_close($conn);
      ?>
   </body>
</html>