FLEAPHP提供了自动化的crud操作,可以直接调用其save等接口。

但是,不可避免的需要一些复杂的sql语句,这时就可以使用 TableDataGateway.php 提供的findBySql接口。

比如:

function actionCyTest(){
            ini_set("display_errors", "On");
            error_reporting(E_ALL);
           
            FLEA::loadClass("Table_FishingContent");
            FLEA::loadClass("Helper_GetDomain");
            $this->tbReport =& FLEA::getSingleton("Table_FishingContent");
            var_dump($this->tbReport->findBySql('select * from fishing_content limit 1'));
            exit;
        }

在默认control里增加了一个这样的函数,通过/index.php?controller=Default&action=cytest访问,即可获取该sql句子的结果。

附FLEA/Db/TableDataGateway.php 的方法:

function FLEA_Db_TableDataGateway($params = null)
    function setDBO(& $dbo)
    function & getDBO()
    function & find($conditions, $sort = null, $fields = '*', $queryLinks = true)
    function & findAll($conditions = null, $sort = null, $limit = null, $fields = '*', $queryLinks = true)
        $callback = create_function('& $r, $o, $m', '$r[$m] = null;');
    function assembleRecursionRow($mappingName, & $row, $enabledLinks = null)
    function assembleRecursionRowset($mappingName, & $rowset, $enabledLinks = null)
    function & findByField($field, $value, $sort = null, $fields = '*')
    function & findAllByField($field, $value, $sort = null, $limit = null, $fields = '*')
    function & findAllByPkvs($pkvs, $conditions = null, $sort = null, $limit = null, $fields = '*', $queryLinks = true)
    function & findBySql($sql, $limit = null)
    function findCount($conditions = null, $fields = null)
    function save(& $row, $saveLinks = true, $updateCounter = true)
    function saveRowset(& $rowset, $saveLinks = true)
    function replace(& $row) {
    function replaceRowset(& $rowset)
    function update(& $row, $saveLinks = true)
    function updateRowset(& $rowset, $saveLinks = true)
    function updateByConditions($conditions, & $row)
    function updateField($conditions, $field, $value)
    function incrField($conditions, $field, $incr = 1)
    function decrField($conditions, $field, $decr = 1)
    function create(& $row, $saveLinks = true)
    function createRowset(& $rowset, $saveLinks = true)
    function remove(& $row, $removeLink = true)
    function removeByPkv($pkv, $removeLink = true)
    function removeByConditions($conditions, $removeLink = true)
    function removeByPkvs($pkvs, $removeLink = true)
    function removeAll()
    function removeAllWithLinks()
    function enableLinks($links = null)
    function enableLink($linkName)
    function disableLinks($links = null)
    function disableLink($linkName)
    function clearLinks()
    function relink()
    function & getLink($linkName)
    function & getLinkTable($linkName)
    function existsLink($name)
    function createLink($defines, $type)
    function removeLink($linkName)
    function checkRowData(& $row, $skip = 0) {
    function getLastValidation($info = null) {
    function newInsertId() {
    function execute($sql, $inputarr = false)
    function qinto($sql, $params = null)
    function parseWhere($where, $args = null)
    function _parseWhereArray($where)
    function _parseWhereString($where, $args = null)
    function _parseWhereQfield($matches)
    function qstr($value)
    function qfield($fieldName, $tableName = null)
    function qfields($fieldsName, $tableName = null, $returnArray = false)
    function getWhere($conditions, $queryLinks = true) {
    function flushMeta()
    function _setUpdatedTimeFields(& $row) {
    function _setCreatedTimeFields(& $row) {
    function _prepareMeta($flushCache = false) {
    function _beforeCreate(& $row)
    function _beforeCreateDb(& $row)
    function _afterCreateDb(& $row)
    function _beforeUpdate(& $row)
    function _beforeUpdateDb(& $row)
    function _afterUpdateDb(& $row)
    function _beforeRemove(& $row)
    function _afterRemoveDb($row)
    function _beforeRemoveDbByPkv($pkv)
    function _afterRemoveDbByPkv($pkv)
    function _updateCounterCache(& $row)

FLEAPHP框架的数据库操作相关推荐

  1. freecplus框架-PostgreSQL数据库操作

    文章目录 一.源代码说明 二.概述 三.connection类 四.sqlstatement类 五.程序流程 1.无结果集SQL的程序的流程 2.有结果集SQL的程序的流程 六.示例程序 1.创建超女 ...

  2. freecplus框架-MySQL数据库操作

    文章目录 一.源代码说明 二.概述 三.connection类 四.sqlstatement类 五.程序流程 1.无结果集SQL的程序的流程 2.有结果集SQL的程序的流程 六.示例程序 1.创建超女 ...

  3. freecplus框架-Oracle数据库操作

    文章目录 一.源代码说明 二.概述 三.connection类 四.sqlstatement类 五.程序流程 1.无结果集SQL的程序的流程 2.有结果集SQL的程序的流程 六.示例程序 1.创建超女 ...

  4. scala利用akka框架封装数据库操作api微服项目

    原作:https://blog.csdn.net/weixin_42003671/article/details/97630151 原作很详细了但是基本都是test阶段的东西,也踩了很多坑才走出来 这 ...

  5. ORM映射框架总结--数据库操作库(精修版)

    1.       ORM数据库操作原理 前面已经介绍过了个人ORM映射框架中的三个核心库: 实体-数据库 映射特性关系: http://www.cnblogs.com/qingyuan/archive ...

  6. 封装php框架视频教程_自编PHP框架一(数据库操作封装)

    自编PHP框架之数据库PDO层封装和模型类部分方法的编写 如果你是喷子,问我造轮子花这么多精力有什么用的话,那就走,看看我的这篇文章 为什么我要写自己的框架?框架所有的代码都在笔者的Github上做展 ...

  7. Django框架之数据库操作

    文章目录 一.前言 二.数据库配置 三.数据表创建 1.单表创建 2.关联表创建 四.ORM增删改查 1.新增数据(C) (1)创建单表数据 (2)创建从表数据 2.读取数据(R) (1)读取多条数据 ...

  8. 11.freecplus框架-Oracle数据库操作

    文章目录 一.源代码说明 二.概述 三.connection类 四.sqlstatement类 五.程序流程 1.无结果集SQL的程序的流程 2.有结果集SQL的程序的流程 六.示例程序 1.创建超女 ...

  9. CodeIgniter框架之数据库操作

    连接数据库相关操作 查询语句: public function showUsers(){ //加载数据库操作类         $this->load->database();       ...

最新文章

  1. 机器学习常见的分类算法的优缺点
  2. linux内核参数sem的说明
  3. Java Jaxb JavaBean与XML互转
  4. ipad运行python爬虫_Python爬虫之UserAgent的使用实例
  5. stm32学习之新建工程
  6. 爬虫爬取链接中文字_使用爬虫技术爬取图片链接并下载图片
  7. Junit Hamcrest Eclemma
  8. jfinal框架中前端向后台传输数据
  9. wxWidgets:wxGridRangeSelectEvent类用法
  10. SAP HANA Delivery Unit概念简述
  11. Java运行机制和运行过程基础知识
  12. 找不出破绽!斯坦福等新研究:随意输入文本,改变视频人物对白,逼真到让作者害怕...
  13. JAVA CLASS混淆工具:RetroGuard(已无法下载)
  14. 关于QQ邮箱有时候接受不到邮件的解决
  15. 异常测试之Socket网络异常
  16. 如何使用WiFi的WPS功能
  17. P3545 [POI2012]HUR-Warehouse Store
  18. 【中文分词】基于ICTCLAS的Python中文分词
  19. Debian折腾笔记
  20. python笔记(五)

热门文章

  1. maple 解代数方程组得多项式_Maple与数学实验
  2. windows下修改中用户名为英文
  3. Java项目:JSP中华传统美食网站平台管理系统
  4. debian基本设置以及配置XManager远程登录桌面、命令行设置、Xftp上传下载文件
  5. DAU和MAU的分析
  6. B. Not Dividing(构造)
  7. JS中获取当前日期(年-月-日)
  8. IIC基础回顾——硬件I2C
  9. Linux嵌入式学习(简单 platform 设备驱动的实现)
  10. KaTex数学公式编辑器相关