« 上一篇下一篇 »

Web查询数据库之建立一个连接

建立一个连接是Web查询数据库第二个基本步骤。PHP为连接MySQL提供了函数库。这个函数库是mysqli(i表示改进)。当在PHP中使用mysqli函数库时,你可以使用面向对象或面向过程的语法。

       建立一个连接是Web查询数据库第二个基本步骤。

       PHP为连接MySQL提供了函数库。这个函数库是mysqli(i表示改进)。当在PHP中使用mysqli函数库时,你可以使用面向对象或面向过程的语法。

       在脚本中,我们使用如下语句连接MySQL服务器:

       @ $db = new mysqli(’ localhost’ ,  ‘bookorama’ , ‘bookorama123’ , ’books’);

       以上代码实例化了mysqli类并且创建到了主机localhost的连接,该连接使用的用户名和密码分别是:bookorama和bookorama123.该连接被设置成使用books数据库。

       使用这种面向对象的方法,可以调用这个对象的方法来访问的数据库。如果你喜欢过程方法,mysqli也提供了这个选项。要以这种面向过程的方式连接,可以使用如下语句:

       @ $db =mysqli-connect(’localhost’ , ’bookorama’ , ‘bookorama123’ , ‘books’);这个函数将返回一个资源,而不是一个对象。这个资源表示到数据库的连接,而且如果使用过程方法,必须将这个资源传递到mysqli的所有其他函数。这与文件处理函数非常类似,例如fopen()的工作方式。

        Mysqli的大多数函数都有面向对象接口和过程接口。通常,二者的差异在于过程版本的函数名称是以mysqli-开始的,同时要求传入通过mysqli-connect()函数获得的资源句柄。对这个规则来说,数据库连接是一个一个异常,因为它是由mysqli对象的构造函数来创建的。

       尝试连接的结果需要进行检查,因为其他代码都无法在没有有效的数据库连接的情况下工作。可以使用如下代码:

        If(mysqli-connect-errno()){

        echo ‘Error: could not connet to database. Please try again later.’;

        exit;

         }

      (以上代码在面向对象版本和过程版本中相同。)mysqli-coonet-errno()函数将在出现连接错误时返回一个错误号,如果成功,则返回0.

       请注意,当连接到数据库时,我们通常会以错误抑制操作符@作为第一行代码。这样,可以很巧妙地处理任何错误。

       请记住,MySQL对同时连接数据库的连接数量有一定的限制。MySQL参数max-connetions决定了同时连接的个数,该参数和相关的Apache参数MaxClients的作用是,高诉服务器拒绝新的连接请求,从而确保系统资源不会在系统忙碌的时候,或软件瘫痪的时候被请求和使用。

       可以通过修改配置文件来改变这两个参数的默认值。要设置Apache中的MaxClients参数,可以编辑系统中的httpd.conf文件。腰围MySQL设置max-connetions参数,可以编辑文件my.conf。

« 上一篇下一篇 »