首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

Mac OS 上搭建 PHP 環境並操作 MySQL 實戰筆記

     編輯:MySQL 綜合教學

Mac 本地 PHP + MySQL 開發環境搭建與常用操作

一、使用 MAMP Pro 快速搭建本地伺服器

官網:MAMP Pro。安裝後網站根目錄位於 /Applications/MAMP/htdocs,啟動服務後可透過 https://localhost:8888 訪問,或點選工具列快速開啟站點。

MAMP Pro 介面

二、Homebrew 安裝 PHP

brew tap josegonzalez/homebrew-php
brew install php54

安裝完成後 PHP 路徑為 /usr/local/bin/php,配合 PhpStorm 即可愉快開發。

三、MySQL 基礎操作指令大全

資料庫與資料表操作

-- 顯示所有資料庫
SHOW DATABASES;

-- 選擇資料庫
USE guest;

-- 查看當前資料庫
SELECT DATABASE();

-- 查看資料表列表
SHOW TABLES;

-- 查看資料表結構
DESCRIBE users;

-- 查看建表語句
SHOW CREATE TABLE users;

建庫建表與編碼設定

-- 建立資料庫
CREATE DATABASE book;

-- 設定中文編碼
SET NAMES gbk;  -- 或 utf8

-- 建立資料表
CREATE TABLE users (
    username VARCHAR(20) NOT NULL,
    sex CHAR(1),
    birth DATETIME
);

資料增刪改查 (CRUD)

-- 插入資料
INSERT INTO users (username, sex, birth) VALUES ('jack', 'male', NOW());

-- 查詢資料
SELECT * FROM users;
SELECT id, name, email FROM class;

-- 更新資料
UPDATE class SET point = 80 WHERE id = 2;

-- 刪除資料
DELETE FROM class WHERE id = 2;

常用資料類型速查

類別類型
整數TINYINT, SMALLINT, INT, BIGINT
浮點/定點FLOAT, DOUBLE, DECIMAL(M,D)
字串CHAR, VARCHAR
日期時間DATETIME, DATE, TIMESTAMP
大文本TINYTEXT, TEXT, LONGTEXT

四、PHP 連接 MySQL 實戰(mysqli / PDO 建議替代舊 mysql_* 函式)

注意:PHP 7.0+ 已移除 mysql_* 系列函式,生產環境請使用 mysqli 或 PDO。以下僅作教學示範舊版寫法。

1. 連接資料庫

<?php
header('Content-Type: text/html; charset=utf-8');

// 使用常量儲存配置(較安全)
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PWD', 'your_password');
define('DB_NAME', 'trigkit');

$conn = mysqli_connect(DB_HOST, DB_USER, DB_PWD) or die('連線失敗: ' . mysqli_connect_error());
mysqli_select_db($conn, DB_NAME) or die('選擇資料庫失敗: ' . mysqli_error($conn));
mysqli_query($conn, 'SET NAMES UTF8');

2. 查詢並輸出資料

$sql = "SELECT * FROM class";
$result = mysqli_query($conn, $sql) or die('SQL錯誤: ' . mysqli_error($conn));

while ($row = mysqli_fetch_assoc($result)) {
    echo "ID: {$row['id']}, Name: {$row['name']}, Email: {$row['email']}<br>";
}

mysqli_free_result($result); // 釋放結果集記憶體

3. 預處理語句(防 SQL 注入)

$stmt = $conn->prepare("INSERT INTO class (name, email, point, regdate) VALUES (?, ?, ?, NOW())");
$stmt->bind_param("ssi", $name, $email, $point);
$name = '小明'; $email = 'xiaoming@163.com'; $point = 100;
$stmt->execute();
echo $stmt->affected_rows ? '新增成功' : '新增失敗';
$stmt->close();

4. 關閉連線

mysqli_close($conn); // 非持久連線腳本結束會自動關閉,可省略

五、常用 mysqli 函式速查

函式說明
mysqli_fetch_assoc()取得關聯陣列
mysqli_fetch_array()取得關聯+數字陣列
mysqli_num_rows()取得結果筆數
mysqli_insert_id()取得最後自增 ID
mysqli_affected_rows()受影響行數
mysqli_error()錯誤訊息

最佳實踐:新專案請直接使用 PDO 或 mysqli 預處理,棄用 mysql_* 舊 API;資料庫帳號遵循最小權限原則,避免直接使用 root 連線。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved