📜  PHP | MySQL(创建表)

📅  最后修改于: 2022-05-13 01:55:10.554000             🧑  作者: Mango

PHP | MySQL(创建表)

什么是表?
在关系数据库和平面文件数据库中,表格是一组使用垂直列和水平行模型的数据元素,单元格是行和列相交的单元。表具有指定数量的列,但可以有任意数量的行。

使用 MySQLi 和 PDO 创建 MySQL 表
在本文中,我们已经了解了如何使用PHP在 MySQL 中创建数据库。创建表的步骤与创建数据库类似。不同之处在于我们将连接到现有数据库并在该数据库中创建一个表,而不是创建一个新数据库。要连接到现有数据库,我们可以在连接到 MySQL 时传递一个额外的变量“数据库名称”。

CREATE TABLE 语句用于在 MySQL 中创建表。

在本文中,将创建一个名为“employees”的表,其中包含四列:“id”、“firstname”、“lastname”和“email”。

将使用的数据类型是:

  1. VARCHAR:保存一个可变长度的字符串,可以包含字母、数字和特殊字符。最大尺寸在括号中指定。
  2. INT : INTEGER 数据类型接受隐含小数位数为零的数值。它存储 -2147483648 到 2147483647 之间的任何整数值。

本文中与数据类型一起使用的属性是:

  1. NOT NULL:每一行必须包含该列的值,不允许空值。
  2. PRIMARY KEY:用于唯一标识表中的行。具有 PRIMARY KEY 设置的列通常是 ID 号。

下面描述了在三个不同版本中创建表:

  • 使用 MySQLi 面向对象过程创建表
    句法 :
    connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    
    // sql code to create table
    $sql = "CREATE TABLE employees(
            id INT(2)  PRIMARY KEY, 
            firstname VARCHAR(30) NOT NULL,
            lastname VARCHAR(30) NOT NULL,
            email VARCHAR(50)
            )";
    
    if ($conn->query($sql) === TRUE) {
        echo "Table employees created successfully";
    } else {
        echo "Error creating table: " . $conn->error;
    }
    
    $conn->close();
    ?>
    

    输出 :

  • 使用 MySQLi Procedural 过程创建表
    句法 :
    
    

    输出 :

  • 使用 PDO 过程创建表
    句法 :
    setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
        // sql code to create table
        $sql = "CREATE TABLE employees (
                id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
                firstname VARCHAR(30) NOT NULL,
                lastname VARCHAR(30) NOT NULL,
                email VARCHAR(50)
                )";
    
        // using exec() because no results are returned
        $conn->exec($sql);
        echo "Table employees created successfully";
        }
    catch(PDOException $e)
        {
        echo $sql . "" . $e->getMessage();
        }
    
    $conn = null;
    ?>
    

    输出 :