MariaDB 資料庫介紹
前言
由於我們的開發環境使用 Xampp , 而Xampp預設的資料庫已經由Mysql更改為MariaDB , 兩者非常的相識 , 所以各位不用太擔心 , 而這章節我們將教大家如何操作資料庫 , 以及使用PHP串聯資料庫, 讓我們開始吧 ~
如何操作資料庫
本章節的開發環境使用 Xampp ,如果還沒安裝Xampp 可以看這篇 Xampp安裝教學
開啟phpMyAdmin
步驟一
首先我們先使用Xampp啟動Apache與資料庫
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjn5nlBYp5Rdc8SQ8qFLMZ6SepxbgYs8mcBXMJ_XxkmtsLRMdG2lZd-R36HTS8SkvnDBIKEnnhXIggE9RqkGVmpdjLqumdxgAiO_jhXGrI2BakLN8MV6r9aznsj4X1pAkk3I53vjhP476s/w640-h416/1.jpeg)
步驟二
在網址打上 http://127.0.0.1/phpmyadmin/
畫面如下
資料庫簡易的操作
資料庫是儲存資料的地方 , 例如儲存會員的帳號密碼, 個人的資料等等...
一個資料庫系統中可以有多個資料庫(db) , 一個資料庫(db)可以有很多個資料表(table)
因為資料庫應用實在太多了 , 以下我們將介紹較簡單的入門技巧 , 請見諒
創建資料庫(DB)
操作資料表(Table)
接下來的範例 , 我們來設計一個簡易的會員 + 文章的資料表
因為要熟悉指令所以我們以指令的方式進行操作
(create)創建資料表
語法 : CREATE TABLE 資料庫名.資料表名 (欄位名 資料型態);
先創建兩個table來儲存資料 , members來存會員 , articles來存會員寫的文章
創建會員表
CREATE TABLE members ( #創建會員表 , 命名規則會加上s , 因為裡面有很多個會員 id INT NOT NULL AUTO_INCREMENT, #會員ID ,就像每個人都有身分證字號 , 新增資料的時候資料庫會自動生成(AUTO_INCREMENT) name VARCHAR(50) NOT NULL , #會員姓名 最多50個字 ,且不可為空值(NOT NULL) PRIMARY KEY (id) # 設定 id 為唯一值 , 就像身分證字號不會重複一樣 )
創建文章表
CREATE TABLE articles ( #創建文章表 id INT NOT NULL AUTO_INCREMENT, #文章ID , INT表示為數字 member_id INT NOT NULL, #會員(members)的ID , 這樣才能知道這篇文章是誰寫的 title VARCHAR(100) NOT NULL , #文章標題 VARCHAR表示為字串(最多100個字) ,且不可為空值(NOT NULL) content text NOT NULL , #文章內容 ,text型態可以容納更多字元(65,535 bytes的字元) ,且不可為空值(NOT NULL) PRIMARY KEY (id) # 設定 id 為唯一值 , 就像身分證字號不會重複一樣 )
(insert)新增資料
語法 : INSERT INTO 資料庫名.資料表名 (欄位名) VALUES (資料);
接下來我們來新增 幾個會員 和 幾篇文章
新增會員資料
INSERT INTO members (name) VALUES #新增名稱為mark跟andy兩個會員 ('mark'), ('andy');
新增文章資料
INSERT INTO articles (member_id,title,content) VALUES (1,'狗狗','狗狗喜歡玩球'), (1,'貓咪','貓咪喜歡吃魚'), (2,'牛牛','牛牛喜歡吃草');
說明 : member_id要對照到members的id , 依照範例mark的 id 是 1 , andy的id 是 2
(update)更新資料
語法 : UPDATE 資料表名 SET 欄位名 = 想更新的資料 WHERE 條件
UPDATE articles SET title='狗勾',content='狗勾喜歡吃骨頭' WHERE id = 1;
WHERE id = 1 說明 :更改 id 等於 1 的那行資料,如果沒有WHERE會更新所有的資料,需要特別小心使用
(select)查詢資料
語法 : SELECT 欄位 FROM 資料表 WHERE 特定欄位 = 數字 ;
查詢所有文章
SELECT * FROM articles
說明 : * 號代表印出所有欄位 , 通常建議不要使用 * 號 , 會拖延時間 , 列出想要的欄位就好了
結果圖 :
雖然成功印出資料了 , 但是有一個問題就是我們根本不知道member_id是誰呀 , 所以我們必須要加入會員的表 , 讓資料看起來更完整
JOIN查詢
SELECT a.title,a.content,m.name FROM articles AS a JOIN members AS m ON a.member_id = m.id
重點說明:
As 後面代表取的名子(把articles取名為 a , members 取名為 m)
a.title 代表 articles 裡面的 title欄位
JOIN 會員表 ON 文章的member_id欄位 等於 會員的id
結果如下 : 文章標題 、文章內容、會員名稱 , 是不是更完整了呢 ~
查詢語句的執行順序如下(順序不對會造成錯誤)
1、FROM
2、WHERE:指定條件
3、GROUP BY:欄位內的資料若有不只一筆名稱相同的資料的話,就會把它們作為群組
4、ORDER BY:把資料做排序 , 語法 : ORDER BY "欄位名" [ASC, DESC]; (ASC 小至大排列 , DESC 大至小排列)
5、LIMIT : 限制筆數 , 語法 : ( limit 數字 ) , ( limit 第幾行開始 , 總共幾行 )
以上幾點也都很重要 , 但更詳細的用法先不贅述 , 敬請見諒.....
(delete)刪除資料
語法 : DELETE FROM 資料表名稱 WHERE 條件;
DELETE FROM articles WHERE id = 3;
資料庫管理工具 - HeidiSQL
由於網頁版的phpmyadmin個人覺得實在是不太好用
所以這邊我們推薦了一款免費的資料庫管理工具HeidiSQL , 功能跟phpmyadmin差不多 , 只是個人覺得比較人性化一點~
下載網址
https://www.heidisql.com/download.php?download=installer
下載成功後 打開HeidiSQL , 會看到視窗
填寫好資料後 , 成功進入畫面
查看資料表 ( 我們剛剛建的文章table)
以上就是 資料庫的入門技巧 , 當然還有很多這邊沒講到的 , 後續會再補齊 ,
那請大家先練習嚕~~~
留言
張貼留言