zoukankan      html  css  js  c++  java
  • Ecshop 数据库操作方法getRow、getAll、getOne区别

    ECShop没有使用一些开源的数据库操作类,比如adodb或者PEAR,而是封装了自己的实现。这样做的好处是实现非常轻量,大大减小了分发包的文件大小。另外,当网站需要做memcached缓存时,也可以很方便的实现。

    当然,这样做的后果就是数据库的选择非常狭窄,无法实现其它的非MySQL数据库。

    ECShop的数据操作类文件是includes/cls_mysql.php,类名是cls_mysql。

    该类主要提供了下面 一些比较有用的方法:

    getAll($sql)和getAllCached($sql, $cached = 'FILEFIRST'):获取所有记录

    function getAll($sql)
        {
            $res = $this->query($sql);
            if ($res !== false)
            {
                $arr = array();
                while ($row = mysql_fetch_assoc($res))
                {
                    $arr[] = $row;
                }
    
                return $arr;
            }
            else
            {
                return false;
            }
        }
    

    getRow($sql, $limited = false)和getRowCached($sql, $cached = 'FILEFIRST'):获取单行记录。


    getCol($sqlse)和getColCached($sql, $cached = 'FILEFIRST'):获取某栏位的所有值。
    getOne($sql, $limited = false)和getOneCached($sql, $cached = 'FILEFIRST'):获取单个数值。

    function getOne($sql, $limited = false)
        {
            if ($limited == true)
            {
                $sql = trim($sql . ' LIMIT 1');
            }
    
            $res = $this->query($sql);
            if ($res !== false)
            {
                $row = mysql_fetch_row($res);
    
                if ($row !== false)
                {
                    return $row[0];
                }
                else
                {
                    return '';
                }
            }
            else
            {
                return false;
            }
        }
    

      


    query($sql):执行数据库查询。
    autoExecute($table, $field_values, $mode = 'INSERT', $where = ''):数据库表操作。

  • 相关阅读:
    spring AOP的实现原理
    spring IOC的实现原理
    springboot开发环境搭建
    JEECG入门
    maven项目搭建步骤
    Centos 7上搭建sftp服务(适用Centos6)
    订制rpm包到Centos7镜像中
    Centos7上搭建redis主从
    windows server 几大实时同步软件比较
    windows server 2008 R2 Enterprise 间实时同步之FreeFileSync 部署过程
  • 原文地址:https://www.cnblogs.com/jiechn/p/3994592.html
Copyright © 2011-2022 走看看