MariaDB - 创建表


在本章中,我们将学习如何创建表。在创建表之前,首先确定表的名称、字段名称和字段定义。

以下是创建表的一般语法 -

CREATE TABLE table_name (column_name column_type);

查看应用于在 PRODUCTS 数据库中创建表的命令 -

databaseproducts_ tbl(
   product_id INT NOT NULL AUTO_INCREMENT,
   product_name VARCHAR(100) NOT NULL,
   product_manufacturer VARCHAR(40) NOT NULL,
   submission_date DATE,
   PRIMARY KEY ( product_id )
);

上面的例子使用“NOT NULL”作为字段属性,以避免空值引起的错误。属性“AUTO_INCRMENT”指示 MariaDB 将下一个可用值添加到 ID 字段。关键字primary key 将列定义为主。用逗号分隔的多个列可以定义主键。

创建表的两种主要方法是使用命令提示符和 PHP 脚本。

命令提示符

利用 CREATE TABLE 命令执行任务,如下所示 -

root@host# mysql -u root -p
Enter password:*******
mysql> use PRODUCTS;
Database changed
mysql> CREATE TABLE products_tbl(
   -> product_id INT NOT NULL AUTO_INCREMENT,
   -> product_name VARCHAR(100) NOT NULL,
   -> product_manufacturer VARCHAR(40) NOT NULL,
   -> submission_date DATE,
   -> PRIMARY KEY ( product_id )
   -> );
mysql> SHOW TABLES;
+------------------------+
| PRODUCTS               |
+------------------------+
| products_tbl           |
+------------------------+

确保所有命令均以分号终止。

PHP 创建表脚本

PHP 提供了mysql_query()用于创建表。它的第二个参数包含必要的 SQL 命令 -

<html>
   <head>
      <title>Create a MariaDB Table</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 products_tbl( ".
            "product_id INT NOT NULL AUTO_INCREMENT, ".
            "product_name VARCHAR(100) NOT NULL, ".
            "product_manufacturer VARCHAR(40) NOT NULL, ".
            "submission_date DATE, ".
            "PRIMARY KEY ( product_id )); ";
      
         mysql_select_db( 'PRODUCTS' );
         $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> Table created successfully