当前位置: 移动技术网 > IT编程>开发语言>PHP > 浅谈PHP的数据库接口和技术

浅谈PHP的数据库接口和技术

2017年12月12日  | 移动技术网IT编程  | 我要评论

1、php支持哪些数据库(拥有哪些数据库接口)

adabas d ,interbase ,postgresql ,dbase ,frontbase ,sqlite ,empress ,msql ,solid ,filepro(只读),direct ms-sql ,sybase ,hyperwave ,mysql ,velocis ,ibm db2 ,odbc ,unix dbm ,informix ,oracle(oci7 和 oci8),ingres ,ovrimos

以上数据库都支持,简言之,支持绝大多数主流数据库

2、php原生操作mysql数据库方法

<?php
//数据库操作
//1.导入数据库
require("../../public/dbconfig.php");
//2.连接数据库
$link=mysql_connect(host,user,pass) or die("数据库连接失败");
//3.选择数据库,设置字符集
mysql_select_db(dbname,$link);
mysql_set_charset("utf8");
//4.编写sql语句,发送sql语句到数据库
$sql="select * from users";
$res=mysql_query($sql,$link);
//5.解析结果集
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数据对象,将数据作为对象来操作,提高了操作数据的安全性和便捷性,从php5.1版本开始支持,例如预处理语句(prepared statements)、绑定参数(bound parameters)、可滚动游标(scrollable cursors)、定位更新(positioned updates)以及 lob。

dao(data access object) 数据访问对象是一个面向对象(pdo)的数据库接口,在很多php框架中通过对原生的pdo封装形成安全便捷的数据处理接口方法,下例为yii中的dao方法:

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

<?php>
//在advanced\common\config\main-local.php的conponents中配置好db;
//连接数据库
$connection = yii::$app->db;
//编写预处理查询语句
$command = $connection->createcommand('select * from post');
//执行操作
$posts = $command->queryall();
$post = $command->queryone();
$titles = $command->querycolumn();
<?php>

4、活动记录active record

activerecord是一种设计模式,他的直接目的不是为了操作数据库的,而是一种数据模型,相对于dao是数据的更高级抽象。它提供了一个面向对象的统一接口,

用以访问数据库中的数据。

使用ar更大的简化代码,减少了出错的可能,下例是yii中的ar操作方法

//数据表customer对象实例化
$customer = new customer();
$customer->name = 'qiang';
$customer->save(); // 一行新数据插入 customer 表

5、什么情况下使用dao或ar了

复杂业务逻辑使用doa, 反之用ar

以上这篇浅谈php的数据库接口和技术就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网