跳转到内容

PHP 和 MySQL 编程/创建表

来自维基教科书,自由的教科书

在创建表之前,请阅读上一节关于 创建数据库

表驻留在数据库内。表包含行,行由一组公共字段或列组成。以下是一个 SELECT * 查询的示例输出

mysql> SELECT * FROM `books`;
+------------+--------------+------------------------------+------+
| ISBN   Invalid ISBN | Author       | Title                        | Year |
+------------+--------------+------------------------------+------+
| 1234567890 | Poisson, R.W | Programming PHP and MySQL    | 2006 |
| 5946253158 | Wilson, M    | Java Secrets                 | 2005 |
| 8529637410 | Moritz, R    | C from Beginners to Advanced | 2001 |
+------------+--------------+------------------------------+------+

如您所见,我们有行(水平的字段集合)和列(垂直的属性和值)。

创建表

[编辑 | 编辑源代码]

创建表的 SQL 代码如下

mysql> CREATE TABLE `table_name` (
       `field1` type NOT NULL|NULL default 'default_value',
       `field2` type NOT NULL|NULL default 'default_value',
       ...
       );

以下是如何创建一个名为 `books` 的表的示例

mysql> CREATE TABLE `books` (
       `ISBN` varchar(35) NOT NULL default '',
       `Author` varchar(50) NOT NULL default '',
       `Title` varchar(255) NOT NULL default '',
       `Year` int(11) NOT NULL default '2000'
       );

获取有关表的的信息

[编辑 | 编辑源代码]

要获取表列表

mysql> SHOW TABLES;

这将生成以下输出

+-------------------+
| Tables_in_library |
+-------------------+
| books             |
+-------------------+
1 row in set (0.19 sec)

要显示用于创建表的 CREATE 查询

mysql> SHOW CREATE TABLE `books`;

这将生成以下输出

+-------+--------------------------------------------+ 
| Table | Create Table 
+-------+--------------------------------------------+
| books | CREATE TABLE `books` (
  `ISBN` varchar(35) NOT NULL default '',
  `Author` varchar(50) NOT NULL default '',
  `Title` varchar(255) NOT NULL default '',
  `Year` int(11) NOT NULL default '2000'
) TYPE=MyISAM |
+-------+--------------------------------------------+
1 row in set (0.05 sec)

然后以表格格式显示相同信息

mysql> DESCRIBE `books`;

这将生成以下输出

+--------+--------------+------+-----+---------+-------+
| Field  | Type         | Null | Key | Default | Extra |
+--------+--------------+------+-----+---------+-------+
| ISBN   Invalid ISBN | varchar(35)  |      |     |         |       |
| Author | varchar(50)  |      |     |         |       |
| Title  | varchar(255) |      |     |         |       |
| Year   | int(11)      |      |     | 2000    |       |
+--------+--------------+------+-----+---------+-------+
4 rows in set (0.18 sec)


华夏公益教科书