首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHPMySQLi扩展学习(一)MySQLi介绍

仅支持面向对象方式使用 可以连接多种数据库,切换数据库带来变更少,甚至可能不用修改代码 支持 存储过程 、 多语句执行 、 预处理语句 最后就是 MySQLi 。...当然,小众并不意味着不好,就像日常开发,我们很少会在 PHP 环境中使用别的数据库,那么在自己小项目中完全使用一套 MySQLi 来操作数据库反而更加地方便快捷。...而 PHP7.2.4 之前版本 MySQLi 会使用 mysql_native_password 来对连接密码进行加密,这样就会导致无法连接上数据库。...但是它是可以正常运行。 总结 从上面的内容可以看出,PDO 特点是支持多种不同类型数据库,就像 Java JDBC 一样。...在接下来文章,我们将默认只使用 面向对象 式写法来继续学习 MySQLi 扩展相关知识。

2.9K00

PHPMySQLi扩展学习(一)MySQLi介绍

PHPMySQLi扩展学习(一)MySQLi介绍 关于 PDO 学习我们告一段落,从这篇文章开始,我们继续学习另外一个 MySQL 扩展,也就是除了 PDO 之外最核心 MySQLi 扩展。...仅支持面向对象方式使用 可以连接多种数据库,切换数据库带来变更少,甚至可能不用修改代码 支持 存储过程 、 多语句执行 、 预处理语句 最后就是 MySQLi 。...而 PHP7.2.4 之前版本 MySQLi 会使用 mysql_native_password 来对连接密码进行加密,这样就会导致无法连接上数据库。...但是它是可以正常运行。 总结 从上面的内容可以看出,PDO 特点是支持多种不同类型数据库,就像 Java JDBC 一样。...在接下来文章,我们将默认只使用 面向对象 式写法来继续学习 MySQLi 扩展相关知识。

2.9K20
您找到你想要的搜索结果了吗?
是的
没有找到

PHPMySQLi扩展学习(三)mysqli基本操作

我们继续 MySQLi 扩展学习,上篇文章中提到过,MySQLi 扩展相对于 PDO 来说功能更加丰富,所以我们依然还会在学习过程穿插各种 MySQLi 好玩方法函数。...不过,今天主角是 MySQLi 如何执行 SQL 语句以及多条 SQL 语句执行。 连接与选择数据库 首先是一个小内容学习分享,依然还是连接数据库,不过这次我们用另外一种方式来进行连接。...在实例化过程,我们并没有给 mysqli 构造函数传递任何参数,而是使用 real_connect() 方法来传递数据库服务器信息并建立连接。...$mysqli->select_db('mysql'); 就是这样一个简单 select_db() 方法,就可以帮助我们在代码执行过程动态地修改所连接数据库。...如果执行是 SELECT 语句,那么 query() 返回就是一个 mysqli_result 对象,它代表从一个数据库查询获取结果集。关于这个对象内容我们将在后面的文章中进行详细说明。

2.9K00

PHPMySQLi扩展学习(三)mysqli基本操作

PHPMySQLi扩展学习(三)mysqli基本操作 我们继续 MySQLi 扩展学习,上篇文章中提到过,MySQLi 扩展相对于 PDO 来说功能更加丰富,所以我们依然还会在学习过程穿插各种...MySQLi 好玩方法函数。...不过,今天主角是 MySQLi 如何执行 SQL 语句以及多条 SQL 语句执行。 连接与选择数据库 首先是一个小内容学习分享,依然还是连接数据库,不过这次我们用另外一种方式来进行连接。...在实例化过程,我们并没有给 mysqli 构造函数传递任何参数,而是使用 real_connect() 方法来传递数据库服务器信息并建立连接。...$mysqli->select_db('mysql'); 就是这样一个简单 select_db() 方法,就可以帮助我们在代码执行过程动态地修改所连接数据库。

2.9K20

PHPMySQLi扩展学习(四)mysqli事务与预处理语句

对于 MySQLi 来说,事务和预处理语句当然是它之所以能够淘汰 MySQL(原始) 扩展资本。我们之前也已经学习过了 PDO 关于事务和预处理语句相关内容。...所以在这里,我们就不再多讲理论方面的东西了,直接上代码来看看 MySQLi 这两大特性与 PDO 在使用上区别。 事务处理 首先,我们还是要让 MySQLi 对于错误语句也报出异常来。...在 PDO ,我们直接指定连接报错属性就可以了。...而在 MySQLi ,我们则需要指定 MySQLi_Driver 对象报错属性为抛出异常,很明显,MySQLi_Driver 就是 MySQLi 驱动对象。...预处理语句 总体来说,事务处理和 PDO 区别不大,但是预处理语句和 PDO 使用区别就有一些了。首先是我们 MySQLi 占位符只有 ? 问号占位。

2.4K00

PHPMySQLi扩展学习(四)mysqli事务与预处理语句

PHPMySQLi扩展学习(四)mysqli事务与预处理语句 对于 MySQLi 来说,事务和预处理语句当然是它之所以能够淘汰 MySQL(原始) 扩展资本。...我们之前也已经学习过了 PDO 关于事务和预处理语句相关内容。所以在这里,我们就不再多讲理论方面的东西了,直接上代码来看看 MySQLi 这两大特性与 PDO 在使用上区别。...事务处理 首先,我们还是要让 MySQLi 对于错误语句也报出异常来。关于这个功能就和 PDO 很不一样了。在 PDO ,我们直接指定连接报错属性就可以了。...而在 MySQLi ,我们则需要指定 MySQLi_Driver 对象报错属性为抛出异常,很明显,MySQLi_Driver 就是 MySQLi 驱动对象。...预处理语句 总体来说,事务处理和 PDO 区别不大,但是预处理语句和 PDO 使用区别就有一些了。首先是我们 MySQLi 占位符只有 ? 问号占位。

2.1K10

PHPMySQLi扩展学习(二)mysqli一些少见属性方法

PHPMySQLi扩展学习(二)mysqli一些少见属性方法 虽说是少见一些属性方法,但是可能还是有不少同学在日常开发中使用过,这里只是学习了可能相对来说我们用得比较少一些 mysqli...通过打印 mysqli error_list 属性就可以看到当前错误信息。 错误信息 紧接着上一段,对于执行语句错误信息,我们可以通过几个 mysqli 属性来获得。...不要以为看到一个 set 关键字就是设置或者修改什么,这个方法是获取当前字符集信息。...在这里,我们就先看看 mysqli 关于 MySQL 线程几个属性和方法吧。...测试代码: https://github.com/zhangyue0503/dev-blog/blob/master/php/202009/source/5.PHPMySQLi扩展学习(二)mysqli

1.6K10

EF实体修改

不推荐方式一: 思路:先从ObjectContext取出实体,然后将前台传过来DTO属性对应赋值到我们实体上,然后调用ObjectContext保证修改方法。...但是这种方式是最不提倡,因为这样每次修改前都得先将数据查出来,经过SqlProfiler追踪,这么一个操作要对数据库进行两次连接。这是不可忍受!...推荐方式二: 思路:无需先查出实体,因为我们知道EF通过ObjectStateManage来控制添加、修改、删除队列以及实体状态,我们所有可以通过在直接将DTO转化成实体,然后将实体对应队列,并...且我们手动将实体状态处理好,再调用ObjectContext保证修改方法,这样就避免了先查询后修改,两次数据库连接问题了。...= "1101"; //先将实体附加到实体上下文中 schoolDB.Student.Attach(student); //手动修改实体状态 schoolDB.ObjectStateManager.ChangeObjectState

1.1K10
领券