表的創建命令需要:
-
表的名稱
-
字段名稱
-
定義每個字段(類型、長度等)
語法
下面是通用的SQL語法用來創建MySQL表:
CREATE TABLE table_name (column_name column_type);
現在,我們將在 test 數據庫中創建以下表。
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 ) );
在這里,一些數據項需要解釋:
-
字段使用NOT NULL屬性,是因為我們不希望這個字段的值為NULL。 因此,如果用戶將嘗試創建具有NULL值的記錄,那么MySQL會產生錯誤。
-
字段的AUTO_INCREMENT屬性告訴MySQL自動增加id字段下一個可用編號。
-
關鍵字PRIMARY KEY用於定義此列作為主鍵。可以使用逗號分隔多個列來定義主鍵。
1、通過命令提示符來創建表
在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命令結束。
查看創建表的結果:
2、使用PHP腳本創建表
要在現有數據庫中創建新表,需要使用PHP函數 mysql_query()。通過它的第二個參數 SQL命令來創建一個表。
示例:
這里有一個例子,使用PHP腳本來創建一個表:
<html>
<head>
<title>Creating MySQL Tables</title>
</head>
<body>
<?php $dbhost = 'localhost:3036'; $dbuser = 'root'; $dbpass = ''; $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( 'test' ); $retval = mysql_query( $sql, $conn ); if(! $retval ) { die('Could not create table: ' . mysql_error()); } echo "Table created successfully\n"; mysql_close($conn); ?> </body> </html>
mysql創建表時,設置時間字段自動插入當前時間
DROP TABLE IF EXISTS 'CONTENT'; CREATE TABLE 'CONTENT' ( 'ID' char(20) NOT NULL, 'CURRENT_TIME' timestamp not null default current_timestamp, PRIMARY KEY ('ID') ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
創建數據庫示例:
/*create database Merchandise;*//*創建數據庫*/ DROP TABLE IF EXISTS 'commodity';
create table `commodity` ( `id` int unsigned not null auto_increment primary key,//序號 `commodity_name` varchar(50) not null,//商品名稱 `formatI` varchar(50) not null,//商品規格 `price` double not null,//商品價格 `quantity` double not null,//商品數量 `period` int(20),//商品周期 `purchase_sel` varchar(6),//購/銷 `remark` varchar(100),//備注 `write_time` timestamp default current_timestamp//日期-時間 )charset utf8;
