实现MySQL数据库封装时需要考虑的问题
1。使用方便
使用直接SQL语句
操作模式。只要编写SQL语句,就不会有其他
学习成本。
的uctphp框架提供了一个DBA辅助封装类,将心爱的会议后。
您需要在使用前
显示初始化并
连接到数据库吗。
在
执行第一条SQL语句之前,没有连接到数据库,甚至没有一个新的DB对象。
DBA将在
正确的时间连接到数据库并执行初始化字符编码操作。
查询语句。没有新的查询构造
函数不需要链式操作,这是非常复杂和低效的。
DBA提供以下查询辅助函数。
读取一个值
DBA::过($ SQL);
读取行
DBA::readrowassoc($ SQL);
读取所有行
DBA::readallassoc($ SQL);
所有行的第一列读取
DBA::readallone($ SQL);
在实际的业务场景中,通常有一部分数据页读取。
如果函数可以返回指定的页面数据内容和总的
DBA::readcountandlimit(美元美元美元的SQL,
网页,限制);
ps:函数的上面部分可以提供一个map函数来
处理返回数组的每一行。
写一个语句。为什么区分读写可以明显地
扩展到
控制读写分离、双写等
功能。
如今,在各种云数据库和数据库中间件中,数据库层的实现是一个较好的选择。
DBA:写($ SQL);
数组数组直接插入或更新KV表单。
该值将自动转义,并
支持数组
类型的值。
如果你写你的SQL语句,注重mysql_real_escape_string addslashes或确保安全使用
* /
DBA:插入($表,插入$);
DBA:更新($表,更新,$);
*
批量插入数据的更高效率
当然,太多的行应插在批array_chunk。
* /
DBA:插入($表,$插入);
2。事务
使用PDO支持交易
DBA::开始();
DBA::提交();
DBA:回滚();
三.长期
在某些
情况下,需要长时间
运行,如swoole
服务,后台人员,等等,可能会出现数据库连接超时。
当数据库连接被
发现不及时时,DBA会尝试重新连接。
以上内容是一系列php框架文章(6)mysql数据库
方法介绍给大家,希望对您有所帮助!