最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談PHP的數(shù)據(jù)庫接口和技術(shù)

 更新時間:2016年12月09日 09:47:49   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談PHP的數(shù)據(jù)庫接口和技術(shù)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1、php支持哪些數(shù)據(jù)庫(擁有哪些數(shù)據(jù)庫接口)

Adabas D ,InterBase ,PostgreSQL ,dBase ,F(xiàn)rontBase ,SQLite ,Empress ,mSQL ,Solid ,F(xiàn)ilePro(只讀),Direct MS-SQL ,Sybase ,Hyperwave ,MySQL ,Velocis ,IBM DB2 ,ODBC ,Unix dbm ,informix ,Oracle(OCI7 和 OCI8),Ingres ,Ovrimos

以上數(shù)據(jù)庫都支持,簡言之,支持絕大多數(shù)主流數(shù)據(jù)庫

2、php原生操作mysql數(shù)據(jù)庫方法

<?php
//數(shù)據(jù)庫操作
//1.導(dǎo)入數(shù)據(jù)庫
require("../../public/dbconfig.php");
//2.連接數(shù)據(jù)庫
$link=mysql_connect(HOST,USER,PASS) or die("數(shù)據(jù)庫連接失敗");
//3.選擇數(shù)據(jù)庫,設(shè)置字符集
mysql_select_db(DBNAME,$link);
mysql_set_charset("utf8");
//4.編寫sql語句,發(fā)送sql語句到數(shù)據(jù)庫
$sql="select * from users";
$res=mysql_query($sql,$link);
//5.解析結(jié)果集
while($user=mysql_fetch_assoc($res)){
echo "<tr align='center'>";
echo "<td>{$userstate[$user['state']]}</td>";
echo "<td>{$user['username']}</td>";
echo "<td>".date("Y-m-d",$user['addtime'])."</td>";
echo "<td>
<a href='edit.php?id={$user['id']}'>修改</a> 
<a href='action.php?a=del&id={$user['id']}'>刪除</a>
</td>";
echo "</tr>";
}
mysql_free_result($res);
mysql_close($link);
?>

3、php的PDO概念

PDO即PHP數(shù)據(jù)對象,將數(shù)據(jù)作為對象來操作,提高了操作數(shù)據(jù)的安全性和便捷性,從PHP5.1版本開始支持,例如預(yù)處理語句(prepared statements)、綁定參數(shù)(bound parameters)、可滾動游標(scrollable cursors)、定位更新(positioned updates)以及 LOB。

DAO(Data Access Object) 數(shù)據(jù)訪問對象是一個面向?qū)ο?PDO)的數(shù)據(jù)庫接口,在很多PHP框架中通過對原生的PDO封裝形成安全便捷的數(shù)據(jù)處理接口方法,下例為YII中的DAO方法:

http://www.yii-china.com/doc/guide/db_dao.html

<?php>
//在advanced\common\config\main-local.php的conponents中配置好db;
//連接數(shù)據(jù)庫
$connection = Yii::$app->db;
//編寫預(yù)處理查詢語句
$command = $connection->createCommand('SELECT * FROM post');
//執(zhí)行操作
$posts = $command->queryAll();
$post = $command->queryOne();
$titles = $command->queryColumn();
<?php>

4、活動記錄Active Record

ActiveRecord是一種設(shè)計模式,他的直接目的不是為了操作數(shù)據(jù)庫的,而是一種數(shù)據(jù)模型,相對于DAO是數(shù)據(jù)的更高級抽象。它提供了一個面向?qū)ο蟮慕y(tǒng)一接口,

用以訪問數(shù)據(jù)庫中的數(shù)據(jù)。

使用AR更大的簡化代碼,減少了出錯的可能,下例是YII中的AR操作方法

//數(shù)據(jù)表customer對象實例化
$customer = new Customer();
$customer->name = 'Qiang';
$customer->save(); // 一行新數(shù)據(jù)插入 customer 表

5、什么情況下使用DAO或AR了

復(fù)雜業(yè)務(wù)邏輯使用DOA, 反之用AR

以上這篇淺談PHP的數(shù)據(jù)庫接口和技術(shù)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

旬邑县| 聂拉木县| 夏津县| 太白县| 武宁县| 潜山县| 佳木斯市| 嘉黎县| 松阳县| 南康市| 朝阳市| 巫山县| 延庆县| 英山县| 肇源县| 库车县| 田阳县| 泰来县| 岗巴县| 綦江县| 山东省| 信宜市| 托克托县| 靖远县| 萨嘎县| 克山县| 巴青县| 永定县| 游戏| 麟游县| 凌源市| 华坪县| 社旗县| 策勒县| 灌南县| 城固县| 武义县| 疏附县| 朝阳市| 济源市| 自贡市|