滚动
PHP课程 - 第3.1课 - 使用 MySQL 数据库。创建数据表。
在上一课中,我们学习了如何与数据库建立连接。本课我们将为我们未来的网站创建数据表。首先,在 simpleCMS 类中添加数据库名称:
class simpleCMS { // 管理类 public $host = 'localhost'; // 数据库连接变量 public $username = 'root'; public $password = ''; public $db = 'testDB';
现在我们需要在 MySQL 服务器上创建这个数据库。如果你使用的是 Denwer,本地环境已经包含了 phpMyAdmin。打开 phpMyAdmin 并创建一个新数据库:
现在我们已经配置了数据库并创建了它。接下来,让我们修改 PHP 代码以连接到 MySQL 服务器。更新数据库连接方法如下:
public function connectDB() { $link = mysql_connect($this->host, $this->username, $this->password); // 连接到 MySQL 服务器 if (!$link) { die('连接错误: ' . mysql_error()); } mysql_select_db($this->db) or die("找不到数据库: " . mysql_error()); // 选择数据库 return $link; }
如果一切正常,页面上不会输出任何错误信息。现在我们来创建数据表。为此,添加一个新的方法 buildDB(),并在 connectDB() 方法中调用它:
public function connectDB() { $link = mysql_connect($this->host, $this->username, $this->password); // 连接 MySQL if (!$link) { die('连接错误: ' . mysql_error()); } mysql_select_db($this->db) or die("找不到数据库: " . mysql_error()); // 选择数据库 $this->buildDB(); // 在同一个类中调用另一个方法 return $link; } public function buildDB(){ }
现在,每次连接数据库时,我们都可以在 buildDB() 方法中检查是否存在所需的表。我们将向数据库发送一个 SQL 查询:
public function buildDB(){ $sql = 'CREATE TABLE IF NOT EXISTS messages ( title VARCHAR(150), bodytext TEXT, created VARCHAR(100) )'; return mysql_query($sql); }
现在让我们来分析它是如何工作的。
首先,我们将 SQL 查询写入一个字符串变量,然后将该变量传递给 mysql_query() 函数,该函数负责向数据库发送查询。
SQL 查询以 CREATE TABLE(创建表)语句开头。接着通过 IF NOT EXISTS 检查表是否已经存在,这里我们创建的是名为 messages 的表。
在表名后的括号中定义了表的字段:title、bodytext、created。每个字段后面都指定了数据类型。VARCHAR(150) 表示最大长度为 150 个字符的字符串,TEXT 表示可以存储整篇文章的文本字段。
现在保存 simpleCMS.php 文件并运行 index.php,这样你就创建了一个名为 messages 的表。
我们将在下一课中开始使用这个表。如果你在过程中遇到任何问题或错误,请在评论中留言。