mysql_connect()与mysqli_connect()

与MySQL拓展库相比较,MySQLi在以下方面有了增强:

1.本地绑定/准备/执行的语法支持;

2.游标的支持;

3.SQL语句执行时的错误代码;

4.可同时执行多个SQL语句;

5.索引分析;

6.同时提供过程与面向对象的调用接口。

 

在连接方面的不同之处如下:

1.使用mysqli,可以把数据库名称当作参数传给mysqli_connect()函数,也可以传递给mysqli的构造函数;

2.如果调用mysqli_query()或mysqli的对象查询query()方法,则连接标识是必需的。

参考资源链接:[通达OA V12二次开发指南:PHP7.2MySQL5.7升级及mysqli兼容](https://wenku.csdn.net/doc/63391df1bd?utm_source=wenku_answer2doc_content) 为了适应通达OA V12系统中PHP 7.2和MySQL 5.7的新环境,开发者必须将旧的mysql扩展相关的数据库操作函数,如mysql_connectmysql_query,升级为mysqli扩展对应的新函数mysqli_connectmysqli_query。以下是一个详细的转换过程和示例代码: 1. **数据库连接升级**: 在旧版本中,数据库连接通常使用如下代码: ```php $db = mysql_connect('localhost', 'username', 'password'); ``` 在升级到mysqli后,应改为: ```php $db = mysqli_connect('localhost', 'username', 'password', 'database_name'); ``` 注意,mysqli_connect函数需要数据库名称作为第四个参数。 2. **数据库查询升级**: 执行SQL查询的代码也需要相应的改动: ```php $result = mysql_query($query); ``` 应替换为: ```php $result = mysqli_query($db, $query); ``` 同时,确保查询结果的使用符合mysqli的处理方式。 3. **字段转换**: 在处理结果集字段时,如果你使用了mysql_field_name等函数,这些也需要替换。例如: ```php $field_name = mysql_field_name($result, $field_offset); ``` 应替换为: ```php $field = mysqli_fetch_field_direct($result, $field_offset); $field_name = $field->name; ``` 或者使用: ```php $row = mysqli_fetch_array($result, MYSQLI_ASSOC); $field_name = $row[$field_name]; ``` 4. **错误处理升级**: 错误处理方面,mysql_error和mysql_errno的使用需要替换为mysqli_error和mysqli_errno: ```php if (!$result) { die('Query failed: ' . mysqli_error($db)); } ``` 5. **弃用功能的替代**: 例如,获取受影响的行数,可以使用: ```php $affected_rows = mysqli_affected_rows($db); ``` 通过以上步骤,你可以将通达OA V12系统中的数据库操作代码从mysql扩展升级到mysqli扩展,确保代码在新PHP和MySQL环境中正常运行。为了更深入理解整个升级过程,建议参考《通达OA V12二次开发指南:PHP7.2MySQL5.7升级及mysqli兼容》。这份文档提供了更全面的升级细节和实用代码示例,帮助你有效地进行代码迁移和调试。 参考资源链接:[通达OA V12二次开发指南:PHP7.2MySQL5.7升级及mysqli兼容](https://wenku.csdn.net/doc/63391df1bd?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值