php连接mysql数据库原理是怎样的

 我来答
micloud666
2017-11-17 · TA获得超过751个赞
知道小有建树答主
回答量:561
采纳率:57%
帮助的人:139万
展开全部

现在使用PDO链接数据库的较多

连接是通过创建 PDO 基类的实例而建立的。不管使用哪种驱动程序,都是用 PDO 类名。构造函数接收用于指定数据库源(所谓的 DSN)以及可能还包括用户名和密码(如果有的话)的参数。

连接到 MySQL


<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
?>

如果有任何连接错误,将抛出一个 PDOException 异常对象。如果想处理错误状态,可以捕获异常,或者选择留给通过 set_exception_handler() 设置的应用程序全局异常处理程序。

处理连接错误


<?php
try {
    $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
    foreach($dbh->query('SELECT * from FOO') as $row) {
        print_r($row);
    }
    $dbh = null;
} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
}
?>

如果应用程序不在 PDO 构造函数中捕获异常,zend 引擎采取的默认动作是结束脚本并显示一个回溯跟踪,此回溯跟踪可能泄漏完整的数据库连接细节,包括用户名和密码。因此有责任去显式(通过 catch 语句)或隐式(通过 set_exception_handler() )地捕获异常。

连接数据成功后,返回一个 PDO 类的实例给脚本,此连接在 PDO 对象的生存周期中保持活动。要想关闭连接,需要销毁对象以确保所有剩余到它的引用都被删除,可以赋一个 NULL 值给对象变量。如果不明确地这么做,PHP 在脚本结束时会自动关闭连接。

关闭一个连接

<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
// 在此使用连接
// 现在运行完成,在此关闭连接
$dbh = null;
?>

很多 web 应用程序通过使用到数据库服务的持久连接获得好处。持久连接在脚本结束后不会被关闭,且被缓存,当另一个使用相同凭证的脚本连接请求时被重用。持久连接缓存可以避免每次脚本需要与数据库回话时建立一个新连接的开销,从而让 web 应用程序更快。

清新的怪兽
2017-11-21 · TA获得超过220个赞
知道小有建树答主
回答量:318
采纳率:87%
帮助的人:160万
展开全部
mysql_connect("网站mysql的url","账户","密码");
通常情况下 网站的mysql也是服务器上的 服务器厂商会给你mysql的url地址 通常用phphmyadmin在线管理mysql

因为window和linux的根目录不太一样 linux的根目录是root 而mysql通常是和php等等平级的 你在浏览器地址栏输入“localhost” 你可以看到你的apache php phpmyadmin mysql 等等的目录和信息 输入localhost/info 可以看到php的信息 一般情况下 你把xxx.sql文件放到www下 以www为根目录 mysql在上一级 就“../” php文件在平级 即“./”
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
迅捷情报
2017-11-17 · 超过11用户采纳过TA的回答
知道答主
回答量:86
采纳率:100%
帮助的人:24.5万
展开全部
通过php自带的函数连接数据库,通过函数操作数据库
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式