連接數(shù)據(jù)庫
在我們訪問 mysql數(shù)據(jù)庫前,我們需要先連接到數(shù)據(jù)庫服務器歇盼,PHP里使用mysqli_connect()函數(shù)舔痕。
語法:
mysqli_connect(host,username,password,dbname,port);
host -- 必選參數(shù),mysql服務器地址
username -- 必選參數(shù)豹缀,用戶名伯复,默認是服務器進程所有者得用戶名
password -- 必選參數(shù),密碼邢笙,默認值是空密碼
dbname -- 可選參數(shù)啸如, 連接得數(shù)據(jù)庫名稱
port -- 可選參數(shù), mysql服務器使用得端口號
返回值:如果連接成功則返回一個mysql 連接標志氮惯,失敗則返回false叮雳。
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
if(!$conn){
die("Connection failed: " . mysqli_connect_error());//如果連接失敗輸出一條消息,并退出當前腳本
}
?>
創(chuàng)建數(shù)據(jù)庫
在php中妇汗,執(zhí)行mysql語句债鸡,幾乎都需要用到mysqli_query()方法。
語法:
mysqli_query(connection,query,resultmode);
參數(shù):
connection -- 必選參數(shù)铛纬,規(guī)定要使用的mysql連接厌均。
query -- 必選參數(shù),規(guī)定查詢字典/sql語句告唆。
resultmode -- 可選參數(shù)棺弊,一個常量晶密。
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
$sql = "CREATE DATABASE test01";
mysqli_query($conn,$sql);
?>
創(chuàng)建數(shù)據(jù)表
選擇數(shù)據(jù)庫我們用mysqli_select_db()方法。
語法:
mysqli_select_db(connection,dbname);
connection -- 必選參數(shù)模她,規(guī)定要使用的mysql連接稻艰。
dbname -- 必選參數(shù),規(guī)定要使用的默認數(shù)據(jù)庫名侈净。
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
mysqli_select_db($conn,'test01');//選擇數(shù)據(jù)庫
$sql="CREATE TABLE admin (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(20) NOT NULL,
password VARCHAR(6) NOT NULL,
email VARCHAR(50) NOT NULL
)";
mysqli_query($conn,$sql); //創(chuàng)建數(shù)據(jù)庫
?>
添加數(shù)據(jù)
INSERT INTO語句用于給數(shù)據(jù)庫表添加記錄尊勿。
語法:
INSERT INTO table_name(column1, column2, ...) VALUES (value1,value2,...)
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
$sql="INSERT INTO admin(username, email) VALUES ('jackson','338878728@qq.com')";
mysqli_query($conn,$sql);
?>
更新數(shù)據(jù)
UPDATE 語句用于更新數(shù)據(jù)庫表中已存在的記錄。
語法:
UPDATE table_name SET column1=value1, column2=value2,... WHERE some_column=some_value
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
$sql="UPDATE admin SET email='309123793@qq.com' WHERE username ='jackson'";
mysqli_query($conn,$sql);
?>
刪除數(shù)據(jù)
從數(shù)據(jù)庫表中刪除記錄用DELETE FROM 語句畜侦。
語法:
DELETE FROM table_name WHERE some_column = some_value
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
$sql="DELETE FROM admin WHERE username='admin'";
mysqli_query($conn,$sql);
?>
查詢數(shù)據(jù)
SELECT 語句用于從數(shù)據(jù)表中讀取數(shù)據(jù):
語法:
SELECT column_name(s)/* FROM table_name
這里在讀取數(shù)據(jù)后涉及到我們的數(shù)據(jù)處理元扔,數(shù)據(jù)處理方法有很多,我們列舉幾個:
◆mysql_fetch_array()函數(shù)旋膳, 從結果集中取得一行作為MYSQL_ASSOC關聯(lián)數(shù)組澎语,或MYSQL_NUM數(shù)字數(shù)組,或MYSQL_BOTH二者兼有验懊,除了將數(shù)據(jù)以數(shù)字索引方式儲存在數(shù)組外擅羞,還可以將數(shù)據(jù)作為關聯(lián)索引儲存,用字段名作為鍵名义图。
◆mysqli_fetch_object() 函數(shù)减俏,顧名思義,從結果集中取得一行作為對象碱工, 并將字段名字作為屬性垄懂。◆mysqli_fetch_assoc($result) 等價于mysql_fetch_array($result,MYSQL_ASSOC)痛垛。
◆mysqli_fetch_row($resut)等價于mysql_fetch_arary($resut,MYSQL_NUM)草慧。
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
$sql = "SELECT * FROM admin";
$result = mysqli_query($conn,$sql);
$row = mysqli_fetch_array($result, MYSQL_ASSOC); //將結果集返回到數(shù)組,這里等價于mysqli_fetch_assoc($result)
$obj = mysqli_fetch_object($result); //從結果集中獲取一行作為對象
$rows = mysqli_fetch_row($result); //從結果集中獲取一行作為枚舉數(shù)組
$num = mysqli_num_rows($result); //獲取結果集中的記錄數(shù)
mysqli_free_result($result); //釋放內存
mysqli_close($conn); //關閉連接
?>
數(shù)據(jù)排序
使用ORDER BY 關鍵詞
語法:
SELECT column_name(s) FROM table_name ORDER BY column_name(s) ASC|DESC
說明:默認為升序排列匙头,如果需要降序排列漫谷,請使用 DESC 關鍵字。
舉個栗子:
<?php
$conn=mysqli_connect("localhost","root","");
$sql="SELECT * FROM admin ORDER BY username"; //使用排序
mysqli_query($conn,$sql);
?>