PHP MySQL 建立資料庫
PHP MySQL 建立資料庫
資料庫存有一個或多個表。
你需要 CREATE 權限來建立或刪除 MySQL 資料庫。
使用 MySQLi 和 PDO 建立 MySQL 資料庫
CREATE DATABASE 語句用於在 MySQL 中建立資料庫。
在下面的實例中,建立了一個名為"myDB" 的資料庫:
實例(MySQLi - 物件導向)
<?php $servername = "localhost"; $username = "username"; $password = "password"; // 创建连接 $conn = new mysqli($servername, $username, $password); // 检测连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } // 创建数据库 $sql = "CREATE DATABASE myDB"; if ($conn->query($sql) === TRUE) { echo "数据库创建成功"; } else { echo "Error creating database: " . $conn->error; } $conn->close(); ?>
注意: 當你建立一個新的資料庫時,你必須為mysqli 物件指定三個參數(servername, username 和password)。
Tip: 如果你使用其他連接埠(預設為3306),為資料庫參數添加空字串,如: new mysqli("localhost", "username", "password", "", port)
實例(MySQLi Procedural)
CREATE DATABASE db_name;
語句用來建立資料庫,db_name是我們自己給資料取的名稱:
• 不允許使用漢字作為資料庫的名稱(表名,字段名也是)
• 資料庫名稱盡量不要使用保留字(關鍵字)
• 資料庫名稱中不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號,但可不要使用特殊符號有底線分隔多個字
每個SQL語句只有輸入分號(;)並回車後才會執行
<?php $servername = "localhost"; $username = "username"; $password = "password"; // 创建连接 $conn = mysqli_connect($servername, $username, $password); // 检测连接 if (!$conn) { die("连接失败: " . mysqli_connect_error()); } // 创建数据库 $sql = "CREATE DATABASE myDB"; if (mysqli_query($conn, $sql)) { echo "数据库创建成功"; } else { echo "Error creating database: " . mysqli_error($conn); } mysqli_close($conn); ?>
注意: 以下使用PDO 實例建立資料庫"myDBPDO":
實例
使用PDO:
<?php $servername = "localhost"; $username = "username"; $password = "password"; try { $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password); // 设置 PDO 错误模式为异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "CREATE DATABASE myDBPDO"; // 使用 exec() ,因为没有结果返回 $conn->exec($sql); echo "数据库创建成功<br>"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>
提示: 使用PDO 的最大好處是在資料庫查詢過程出現問題時可以使用異常類別來處理問題。如果 try{ } 程式碼區塊出現異常,腳本會停止執行並會跳到第一個 catch(){ } 程式碼區塊執行程式碼。 在上述捕獲的程式碼區塊中我們輸出了 SQL 語句並產生錯誤訊息。