mysql是面向过程的
mysqli有两套:一个是面向过程的,一个是面向对象的,mysqli是mysql的升级,支持sql语句批量处理功能
POD:PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口。PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。
mysql扩展库和mysql数据库区别
mysql数据库是用于存放数据的
注意mysql数据库的三层结构示意图
mysql扩展库是操作数据的函数库,是php设计者提供给程序员完成mysql数据库的各种操作
mysql实例
<?php
//创建连接
$conn=mysql_connect("127.0.0.1","root","root");
if(!$conn)
{
die("连接失败".mysql_error);
}
echo "Succeed";
//选择数据库
mysql_select_db("text");
//设置操作编码
mysql_query("set names utf8");
//SQl语句
$sql="select * from user";
//执行SQL语句
$ret= mysql_query($sql);
//输出显示
while($row=mysql_fetch_row($ret))
{
var_dump($ret);
foreach($row as $key=>$var)
{
echo "--$var";
}
echo "<br/>";
}
//释放资源
mysql_free_result($ret);
//关闭连接
mysql_close($conn);
mysqli面向对象实例
<?php
//创建连接
$mysqli=new mysqli("localhost","lab","111111","lab");
if($mysqli->connect_error)
{
die("连接失败".$mysqli->connect_error);
}
echo("连接成功");
$sql="select * from user";
$ret=$mysqli->query($sql);
while($row=$res->fetch_row)
{
foreach($row as $key=>$val)
{
echo "--$var";
}
echo "<br/>";
}
//释放资源
$res->free();
//关闭连接
$mysqli->close();
mysqli面向过程的
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// 创建连接
$conn = mysqli_connect($servername, $username, $password);
// 检测连接
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "连接成功";
//关闭连接
mysqli_close($conn);
?>
mysqli面向对象的
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// 创建连接
$conn = new mysqli($servername, $username, $password);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
?>
//断开连接
$conn->close();
注意在以上面向对象的实例中 $connect_error 是在 PHP 5.2.9 和 5.3.0 中添加的。如果你需要兼容更早版本 请使用以下代码替换:
// 检测连接
if (mysqli_connect_error()) {
die("数据库连接失败: " . mysqli_connect_error());
}
PDO
<?php
$servername = "localhost";
$username = "username";
$password = "password";
try {
$conn = new PDO("mysql:host=$servername;", $username, $password);
echo "连接成功";
}
catch(PDOException $e)
{
echo $e->getMessage();
}
//关闭连接
$conn = null;
?>