详解在MySQL中创建表的教程

时间:2022-08-28 07:56:26

创建表的命令要求:

  •     表的名称
  •     表字段名称
  •     每个字段的定义

语法:

下面是通用的SQL语法来创建一个MySQL表:

?
1
CREATE TABLE table_name (column_name column_type);

现在,我们将创建下面的教程数据库表中。

?
1
2
3
4
5
6
7
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用于定义一个列作为主键。可以使用以逗号分隔的多个列定义一个主键。

从命令提示符创建表:

这是很容易的,从mysql>提示符下创建一个MySQL表。您将使用SQL命令 CREATE TABLE 创建一个表。
例子:

下面是一个例子,它创建 tutorials_tbl:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
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脚本创建MySQL表:

要创建新的表中的任何现有的数据库,需要使用PHP函数mysql_query()。将通过它的第二个参数,正确的SQL命令来创建一个表。
例子:

下面是一个例子,使用PHP脚本来创建一个表:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<html>
<head>
<title>Creating MySQL Tables - by www.jb51.com</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>