PHP MySQL:创建一个新表
时间:2019-11-20 08:52:37 来源:igfitidea点击:
简介:在本教程中,我们将向您展示如何使用PHP通过PDO API创建MySQL数据库表。
以下是向您展示如何在数据库中创建新表的步骤:
打开与MySQL数据库服务器的数据库连接。
执行CREATE TABLE语句以创建新表。
PHP MySQL:创建表示例
我们将使用以下SQL脚本在示例数据库中创建一个名为task的新表:
CREATE TABLE IF NOT EXISTS tasks ( task_id INT AUTO_INCREMENT PRIMARY KEY, subject VARCHAR (255) DEFAULT NULL, start_date DATE DEFAULT NULL, end_date DATE DEFAULT NULL, description VARCHAR (400) DEFAULT NULL );
首先,我们创建一个名为CreateTableDemo的类,它具有数据库配置参数。
在CreateTableDemo类的构造函数中,我们通过实例化一个新的PDO对象来打开与示例数据库的连接。
<?php /** * PHP MySQL Create Table Demo */ class CreateTableDemo { /** * database host */ const DB_HOST = 'localhost'; /** * database name */ const DB_NAME = 'classicmodels'; /** * database user */ const DB_USER = 'root'; /* * database password */ const DB_PASSWORD = ''; /** * * @var type */ private $pdo = null; /** * Open the database connection */ public function __construct() { // open database connection $conStr = sprintf("mysql:host=%s;dbname=%s", self::DB_HOST, self::DB_NAME); try { $this->pdo = new PDO($conStr, self::DB_USER, self::DB_PASSWORD); } catch (PDOException $e) { echo $e->getMessage(); } } //... }
接下来,在CreateTabledemo类的析构函数中,我们通过为它分配null值来关闭数据库连接。
/** * close the database connection */ public function __destruct() { // close the database connection $this->pdo = null; }
然后,定义createTaskTable()方法来创建任务表:
/** * create the tasks table * @return boolean returns true on success or false on failure */ public function createTaskTable() { $sql = <<<EOSQL CREATE TABLE IF NOT EXISTS tasks ( task_id INT AUTO_INCREMENT PRIMARY KEY, subject VARCHAR (255) DEFAULT NULL, start_date DATE DEFAULT NULL, end_date DATE DEFAULT NULL, description VARCHAR (400) DEFAULT NULL ); EOSQL; return $this->pdo->exec($sql); }
要执行SQL语句,请调用PDO对象的exec()方法。
之后,您可以创建CreateTableDemo类的实例并调用createTaskTable()方法。
// create the tasks table $obj = new CreateTableDemo(); $obj->createTaskTable();
最后,您可以检查classicmodels示例数据库以查看是否已创建任务表。
您可以通过以下链接下载PHP脚本文件:
下载PHP MySQL创建表源代码
在本教程中,我们逐步向您展示了如何使用PDO对象在MySQL数据库中创建表。