2008/12/12

基礎應用(二) 連接資料庫

記錄使用資料庫的基礎寫法

本篇主要的內容是:『連接資料庫的寫法


連接資料庫的寫法

<?php

$cfgDB_HOST= "localhost"; //主機名稱或ip位址

$cfgDB_PORT= "3306"; //主機開放連線的port

$cfgDB_USERNAME= "test"; //登入主機帳號

$cfgDB_PASSWORD= "test"; //登入主機密碼

$cfgDB_NAME= "books"; //資料庫名稱

//建立資料庫連線,當連線失敗顯示Could not connect
$link = mysql_connect($cfgDB_HOST. ":" . $cfgDB_PORT,
$cfgDB_USERNAME,$cfgDB_PASSWORD)or die("Could not connect");


//選擇資料庫,當連線失敗顯示Could not connect
  mysql_select_db(
$cfgDB_NAME,$link)or die("Could not select database");

//讓中文正常顯示
  mysql_query("SET NAMES 'utf8'");

?>

通常為了安全與方便,會將這個連接資料庫的檔案另外寫一個檔案
當有需要使用到資料庫內部資料時只要將這個檔案include到網頁中即可
而這個檔案在上傳到網頁空間或在伺服器主機裡,可以設定較高的安全權限,當意外洩露了檔案路徑時,可以保護該檔案不被存取。
假設存檔在include資料夾內的connectDB.inc檔
當要使用資料庫時,就加入以下語法
require_once("./include/connectDB.inc");
再導入資料庫連結後,需要給予SQL指令才算真正開始用資料庫

SQL語言在基礎上並沒有任何差別,但在函數上會因資料庫而有改變
例如,在以下三種資料庫裡,基本的查詢SQL語法都是
SELECT * from adminuser
但當加入函數時,就會有以下變化:
取出Uid的第個字母
MS-SQL select substring(uid,2,1)  from adminuser
Oracle select substr(uid,2,1)  from adminuser
My SQL select substring(uid,2,1)  from adminuser
Access select mid(uid,2,1)  from adminuser
DB2 select substr(uid,2,1)  from adminuser
所以在寫SQL語法前最好先確認資料庫類型

給予SQL指令的寫法
<?php

 
$SQL_Str = "select * from adminuser ";
 
$rs = mysql_query($SQL_Str);

 $rsnum = mysql_num_rows(
$rs); //計算該SQL得到的資料筆數使用

?>




沒有留言:

張貼留言