今天在mac上搭建好了php的環境,我們就把php操作mysql數據庫的方法分享給大家,有需要的小伙伴參考下。
Mac本地環境搭建
在Mac系統,我們可以使用MAMP Pro 軟件來搭建本地服務器。安裝好這款軟件,網站的目錄在 /Applications/MAMP/htdocs 文件夾裡,只需將文件放入該文件夾中,就可以通過http://localhost:8888來訪問了,或者通過點擊如下紅色下劃線按鈕來快速訪問站點。
mac系統下安裝php,兩行即可。
?
1 2 brew tap josegonzalez/homebrew-php brew install php54安裝完後配置一下,你就可以使用phpstorm來愉快地編程啦。安裝的php路徑在/usr/local/bin/php
數據庫基本操作
1)用戶的 Web 浏覽器發出 HTTP 請求,請求特定 Web 頁面。
2)Web服務器收到.php 的請求獲取該文件,並將它傳到 PHP 引擎,要求它處理。 3)PHP 引擎開始解析腳本。 腳本中有一條連接數據庫的命令, 還有執行一個查詢的令。命
PHP 打開通向 MYSQL 數據庫的連接,發送適當的查詢。
4)MYSQL 服務器接收數據庫查詢並處理。將結果返回到 PHP 引擎。
5)PHP 以你去哪干完成腳本運行,通常,這包括將查詢結果格式化成 HTML 格式。然
後再輸出 HTML 返回到 Web 服務器。
6)Web服務器將 HTML 發送到浏覽器。
MySQL 常用數據類型
整數型:TINYINT,SMALLINT,INT,BIGINT
浮點型:FLOA T,DOUB LE,DECIMAL(M,D)
字符型:CHAR,VARCHAR
日期型:DA TETIME,DA TE,TIMESTA MP
備注型:TINYTEXT,TEXT,LONGTEXT
MySQL 數據庫操作
1)顯示當前存在的數據庫
>SHOWDATABASES;
2)選擇你所需要的數據庫
>USEguest;
3)查看當前所選擇的數據庫
>SELECTDATABASE();
4)查看一張表的所有內容
>SELECT*FROMguest; //可以先通過SHOWTABLES;來查看有多少張表
5)根據數據庫設置中文編碼
>SET NAMESgbk; //set names utf8;
6)創建一個數據庫
>CREATEDATABASEbook;
7)在數據庫裡創建一張表
>CREATETABLEusers (
>username VARCHAR(20),//NOT NULL 設置不允許為空
>sex CHAR(1),
>birth DATETIME);
8)顯示表的結構
>DESCIRBEusers;
9)給表插入一條數據
?
1 >INSERT INTO users (username,sex,birth) VALUES('jack','male',NOW());PHP連接MySQL數據庫
連接數據庫
?
1 2 3 4 5 6 7 <?php header('COntent-Type:text/html;charset=utf-8');//設置頁面編碼,如果文件是gbk編碼,則charset也應用gbk //@表示如果出錯了,不要報錯,直接忽略 //參數:服務器地址,用戶名和密碼 echo (!!@mysql_connect('localhost','root','*****'));//1 ?>我們用雙感歎號!!來將資源句柄轉換成布爾值,正確輸出1,錯誤則輸出錯誤信息。而如果前面加了@符號,
則忽略錯誤信息,不會輸出錯誤信息。
對於錯誤消息的處理,我們可以使用mysql_error()函數來輸出錯誤消息:
mysql_connect('localhost','root','****') or die('數據庫連接失敗,錯誤信息:'.mysql_error());//對於密碼錯誤的提示:
數據庫連接失敗,錯誤信息:Access denied for user 'root'@'localhost' (using password: YES)
die() 函數輸出一條消息,並退出當前腳本。該函數是 exit() 函數的別名。
數據庫連接參數,可以用常量來存儲,這樣就不能被隨意修改,更加安全。
?
1 2 3 4 5 6 7 8 9 <meta charset="utf-8"> <?php //定義常量參數 define('DB_HOST','localhost'); define('DB_USER','root'); define('DB_PWD','345823');//密碼 $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('數據庫連接失敗,錯誤信息:'.mysql_error()); echo $connect;//Resource id #2 ?>值得注意的是,mysql_connect()括號內的常量可不能加引號,否則肯定出錯。
選擇指定的數據庫
?
1 2 3 4 5 6 7 8 9 10 <?php define('DB_HOST','localhost'); define('DB_USER','root'); define('DB_PWD','345823');//密碼 define('DB_NAME','trigkit');//在phpmyadmin創建一個名為trigkit的數據庫 //連接數據庫 $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('數據庫連接失敗,錯誤信息:'.mysql_error()); //選擇指定數據庫 mysql_select_db(DB_NAME,$connect) or die('數據庫連接錯誤,錯誤信息:'.mysql_error());//將表名字故意寫錯, 提示的錯誤信息:數據庫連接錯誤,錯誤信息:Unknown database 'trigkt' ?>通常不需要使用 mysql_close(),因為已打開的非持久連接會在腳本執行完畢後自動關閉
mysql_select_db(database,connection):選擇MySQL數據庫
獲取記錄集
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 <meta charset="utf-8"> <?php define('DB_HOST','localhost'); define('DB_USER','root'); define('DB_PWD','345823');//密碼 define('DB_NAME','trigkit'); //連接數據庫 $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('數據庫連接失敗,錯誤信息:'.mysql_error()); //選擇指定數據庫 mysql_select_db(DB_NAME,$connect) or die('數據表連接錯誤,錯誤信息:'.mysql_error()); //從數據庫裡把表的數據提出來(獲取記錄集) $query = "SELECT * FROM class";//在trigkit數據庫中新建一張'表' $result = mysql_query($query) or die('SQL錯誤,錯誤信息:'.mysql_error());//故意將表名寫錯:SQL錯誤,錯誤信息:Table 'trigkit.clas' doesn't exist ?>mysql_query() 函數執行一條 MySQL 查詢。
輸出數據
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <meta charset="utf-8"> <?php define('DB_HOST','localhost'); define('DB_USER','root'); define('DB_PWD','345823');//密碼 define('DB_NAME','trigkit'); //連接數據庫 $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('數據庫連接失敗,錯誤信息:'.mysql_error()); //選擇指定數據