请选择 进入手机版 | 继续访问电脑版

SpeedPHP框架

 找回密码
 注册成为新用户

QQ登录

只需一步,快速开始

查看: 8042|回复: 0

[数据操作] 输出SQL语句(数据库调试)

[复制链接]
发表于 2012-8-4 16:31:59 | 显示全部楼层 |阅读模式
  1. 这里说说对于SQL语句的测试,很多时候我们会遇到程序中SQL语句有问题,没有输出错误提示但是却无法达到预期的效果,这是实际开发中经常会遇到的问题。解决这个问题的一个好方法就是先输出SQL语句到浏览器上(echo $sql;),然后再将SQL语句放到PHPMyAdmin上面去执行一下,看看语句是否存在问题。
复制代码

同时,在使用find,create等操作的时候,也同样可以使用dumpSql来获取最后执行的SQL语句,以检查语句是否正确。下面介绍一下dumpSql函数。

dumpSql —— 返回最后执行的SQL语句供分析

用法:dumpSql()

例子:

  1. // 我们根据上章中find函数的例子
  2. $conditions = array( 'name' => '小李' );
  3. $gb = spClass('gb');
  4. $result = $gb->find($conditions);
  5. echo $gb->dumpSql();
复制代码

最后将输出:

SELECT spgb_gb.* FROM spgb_gb WHERE 'name' = '小李' limit 1

返回:

返回最后执行的SQL语句。

以上是spModel对SQL语句本身的支持函数,在简便的数据表CRUD操作基础上再加入直接的SQL执行支撑,无疑为我们的开发带来更多方便。

到此我们已经学习了spModel的全部操作函数,接下来我们可以针对不同的PHP系统需求,对spModel进行继承扩展,以便实现更简便和强大的功能。

另外,很多时候直接使用SQL语句都是在面对关联表查询或者是关联表更新等情况,也就是关联表的操作,同时关联表也是数据库操作中并不少见但较难理解的部分。我们可以高兴的是,sp框架除了强大的spModel数据表操作外,也提供针对关联表进行操作的spLinker程序,简单易用,极大地简化了关联表的操作。需要学习spLinker的朋友请参阅spModel附属类的相关教程。


您需要登录后才可以回帖 登录 | 注册成为新用户

本版积分规则

手机浏览|简版|中文PHP框架|开源协议|SpeedPHP.com ( 粤ICP备08008671号

GMT+8, 2020-2-19 21:50

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表