常温测试

访客:31094  发表于:2014-10-20 16:40:42

amonest的专栏以积极的心态来做事;只做一件事;每一天都在冲刺;想到就去做吧,岁月不会饶人;学习贵在持之以恒!
目录视图摘要视图订阅
博客专家福利     专访徐宜生:坚决不做代码搬运工      有奖试读&征文:我们在互联网上奋斗的故事      微信开发者大会深圳站即将开幕
 ECShop - 数据库操作类
分类: ECShop 2011-04-15 16:29 6966人阅读 评论(1) 收藏 举报
数据库usersqlemailinsertfunction
ECShop v2.7.2没有使用一些开源的数据库操作类,比如adodb或者PEAR,而是封装了自己的实现。这样做的好处是实现非常轻量,只有一个文件,27Kb,大大减小了分发包的文件大小。另外,当网站需要做memcached缓存时,也可以很方便的实现。当然,这样做的后果就是数据库的选择非常狭窄,无法实现其它的非MySQL数据库。

 

ECShop的数据操作类文件是includes/cls_mysql.php,类名是cls_mysql。该类主要提供了下面 一些比较有用的方法:

getAll($sql)和getAllCached($sql, $cached = 'FILEFIRST'):获取所有记录。
getRow($sql, $limited = false)和getRowCached($sql, $cached = 'FILEFIRST'):获取单行记录。
getCol($sqlse)和getColCached($sql, $cached = 'FILEFIRST'):获取某栏位的所有值。
getOne($sql, $limited = false)和getOneCached($sql, $cached = 'FILEFIRST'):获取单个数值。
query($sql):执行数据库查询。
autoExecute($table, $field_values, $mode = 'INSERT', $where = ''):数据库表操作。
现在我们以实例的方式来说明这些方法如何使用。首先,在ecshop/admin目录下新增文件test_mysql.php,文件内容如下:

 

 获取所有记录
getAll方法用来从数据库中获取满足条件的所有记录。getAllCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单行记录
getRow方法用来从数据库中获取满足条件的单行记录,或者说是第一条记录。getRowCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取某栏位的所有值
getCol方法用来从数据库中获取满足条件的某个栏位的所有值。getColCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单个值
getOne方法用来从数据库中获取满足条件的单个值。getOneCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 执行数据库查询
query方法用来执行数据库查询,例如INSERT,UPDATE,DELETE等。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 数据库表操作
autoExecute方法用来简化对数据表的INSERT和UPDATE。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



上一篇PHP - this,self,parent三个关键字之间的区别
下一篇PHP - 序列化和反序列化
主题推荐数据库ecshopmemcached数据邮件
猜你在找
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
核心技术类目
全部主题 Hadoop AWS 移动游戏 Java Android iOS Swift 智能硬件 Docker OpenStack VPN Spark ERP IE10 Eclipse CRM JavaScript 数据库 Ubuntu NFC WAP jQuery BI HTML5 Spring Apache .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap
个人资料
 访问我的空间 
amonest
 
访问:29853次
积分:453分
排名:千里之外
原创:15篇转载:2篇译文:0篇评论:6条
文章搜索

文章分类
C/C++(1)
ECShop(2)
Linux(2)
MySQL(1)
PHP(7)
Python(1)
随笔(2)
文章存档
2011年06月(7)
2011年05月(3)
2011年04月(4)
2011年02月(3)
阅读排行
ECShop - 数据库操作类(6966)
PHP - HTTP_REFERER(6031)
PHP - urlencode和rawurlencode的区别(4046)
PHP - 解决中文乱码问题(2455)
PHP - Iterator接口的解释(1917)
PHP - 获取和设置include_path(1457)
PHP - 序列化和反序列化(766)
PHP - this,self,parent三个关键字之间的区别(676)
PHP - MySQL数据结构转成HTML(649)
MySQL - 安装PHPMyAdmin 3.3.10(448)
评论排行
PHP - Iterator接口的解释(2)
PHP - 获取和设置include_path(1)
Linux - 设置Ubuntu的IP地址(1)
ECShop - 数据库操作类(1)
PHP - 序列化和反序列化(1)
Python摘要(0)
MySQL - 安装PHPMyAdmin 3.3.10(0)
PHP - phpini设置时区(0)
童言童语(0)
C语言教程(0)
推荐文章
最新评论
PHP - Iterator接口的解释
jsonyv: 尼玛这也要叫原创,就是将官方文档贴到这里,csdn好多水货。。
ECShop - 数据库操作类
asiabaa: 非常不错!
PHP - Iterator接口的解释
Y2D4M4X8: 不错,学习了
PHP - 序列化和反序列化
zhzhi2008: 有通过C#来做的例子吗?
PHP - 获取和设置include_path
javaUTU: linux中在/etc/php.ini里改include_path,然后重启服务器,就可以直接用DB...
Linux - 设置Ubuntu的IP地址
amonest: 不错!
公司简介|招贤纳士|广告服务|银行汇款帐号|联系方式|版权声明|法律顾问|问题报告|合作伙伴|论坛反馈
网站客服 杂志客服 微博客服 webmaster@csdn.net 400-600-2320
京 ICP 证 070598 号
北京创新乐知信息技术有限公司 版权所有
江苏乐知网络技术有限公司 提供商务支持
Copyright © 1999-2014, CSDN.NET, All Rights Reserved GongshangLogo
  amonest的专栏以积极的心态来做事;只做一件事;每一天都在冲刺;想到就去做吧,岁月不会饶人;学习贵在持之以恒!
目录视图摘要视图订阅
博客专家福利     专访徐宜生:坚决不做代码搬运工      有奖试读&征文:我们在互联网上奋斗的故事      微信开发者大会深圳站即将开幕
 ECShop - 数据库操作类
分类: ECShop 2011-04-15 16:29 6966人阅读 评论(1) 收藏 举报
数据库usersqlemailinsertfunction
ECShop v2.7.2没有使用一些开源的数据库操作类,比如adodb或者PEAR,而是封装了自己的实现。这样做的好处是实现非常轻量,只有一个文件,27Kb,大大减小了分发包的文件大小。另外,当网站需要做memcached缓存时,也可以很方便的实现。当然,这样做的后果就是数据库的选择非常狭窄,无法实现其它的非MySQL数据库。

 

ECShop的数据操作类文件是includes/cls_mysql.php,类名是cls_mysql。该类主要提供了下面 一些比较有用的方法:

getAll($sql)和getAllCached($sql, $cached = 'FILEFIRST'):获取所有记录。
getRow($sql, $limited = false)和getRowCached($sql, $cached = 'FILEFIRST'):获取单行记录。
getCol($sqlse)和getColCached($sql, $cached = 'FILEFIRST'):获取某栏位的所有值。
getOne($sql, $limited = false)和getOneCached($sql, $cached = 'FILEFIRST'):获取单个数值。
query($sql):执行数据库查询。
autoExecute($table, $field_values, $mode = 'INSERT', $where = ''):数据库表操作。
现在我们以实例的方式来说明这些方法如何使用。首先,在ecshop/admin目录下新增文件test_mysql.php,文件内容如下:

 

 获取所有记录
getAll方法用来从数据库中获取满足条件的所有记录。getAllCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单行记录
getRow方法用来从数据库中获取满足条件的单行记录,或者说是第一条记录。getRowCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取某栏位的所有值
getCol方法用来从数据库中获取满足条件的某个栏位的所有值。getColCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单个值
getOne方法用来从数据库中获取满足条件的单个值。getOneCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 执行数据库查询
query方法用来执行数据库查询,例如INSERT,UPDATE,DELETE等。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 数据库表操作
autoExecute方法用来简化对数据表的INSERT和UPDATE。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



上一篇PHP - this,self,parent三个关键字之间的区别
下一篇PHP - 序列化和反序列化
主题推荐数据库ecshopmemcached数据邮件
猜你在找
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
核心技术类目
全部主题 Hadoop AWS 移动游戏 Java Android iOS Swift 智能硬件 Docker OpenStack VPN Spark ERP IE10 Eclipse CRM JavaScript 数据库 Ubuntu NFC WAP jQuery BI HTML5 Spring Apache .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap
个人资料
 访问我的空间 
amonest
 
访问:29853次
积分:453分
排名:千里之外
原创:15篇转载:2篇译文:0篇评论:6条
文章搜索

文章分类
C/C++(1)
ECShop(2)
Linux(2)
MySQL(1)
PHP(7)
Python(1)
随笔(2)
文章存档
2011年06月(7)
2011年05月(3)
2011年04月(4)
2011年02月(3)
阅读排行
ECShop - 数据库操作类(6966)
PHP - HTTP_REFERER(6031)
PHP - urlencode和rawurlencode的区别(4046)
PHP - 解决中文乱码问题(2455)
PHP - Iterator接口的解释(1917)
PHP - 获取和设置include_path(1457)
PHP - 序列化和反序列化(766)
PHP - this,self,parent三个关键字之间的区别(676)
PHP - MySQL数据结构转成HTML(649)
MySQL - 安装PHPMyAdmin 3.3.10(448)
评论排行
PHP - Iterator接口的解释(2)
PHP - 获取和设置include_path(1)
Linux - 设置Ubuntu的IP地址(1)
ECShop - 数据库操作类(1)
PHP - 序列化和反序列化(1)
Python摘要(0)
MySQL - 安装PHPMyAdmin 3.3.10(0)
PHP - phpini设置时区(0)
童言童语(0)
C语言教程(0)
推荐文章
最新评论
PHP - Iterator接口的解释
jsonyv: 尼玛这也要叫原创,就是将官方文档贴到这里,csdn好多水货。。
ECShop - 数据库操作类
asiabaa: 非常不错!
PHP - Iterator接口的解释
Y2D4M4X8: 不错,学习了
PHP - 序列化和反序列化
zhzhi2008: 有通过C#来做的例子吗?
PHP - 获取和设置include_path
javaUTU: linux中在/etc/php.ini里改include_path,然后重启服务器,就可以直接用DB...
Linux - 设置Ubuntu的IP地址
amonest: 不错!
公司简介|招贤纳士|广告服务|银行汇款帐号|联系方式|版权声明|法律顾问|问题报告|合作伙伴|论坛反馈
网站客服 杂志客服 微博客服 webmaster@csdn.net 400-600-2320
京 ICP 证 070598 号
北京创新乐知信息技术有限公司 版权所有
江苏乐知网络技术有限公司 提供商务支持
Copyright © 1999-2014, CSDN.NET, All Rights Reserved GongshangLogo
  
amonest的专栏以积极的心态来做事;只做一件事;每一天都在冲刺;想到就去做吧,岁月不会饶人;学习贵在持之以恒!
目录视图摘要视图订阅
博客专家福利     专访徐宜生:坚决不做代码搬运工      有奖试读&征文:我们在互联网上奋斗的故事      微信开发者大会深圳站即将开幕
 ECShop - 数据库操作类
分类: ECShop 2011-04-15 16:29 6966人阅读 评论(1) 收藏 举报
数据库usersqlemailinsertfunction
ECShop v2.7.2没有使用一些开源的数据库操作类,比如adodb或者PEAR,而是封装了自己的实现。这样做的好处是实现非常轻量,只有一个文件,27Kb,大大减小了分发包的文件大小。另外,当网站需要做memcached缓存时,也可以很方便的实现。当然,这样做的后果就是数据库的选择非常狭窄,无法实现其它的非MySQL数据库。

 

ECShop的数据操作类文件是includes/cls_mysql.php,类名是cls_mysql。该类主要提供了下面 一些比较有用的方法:

getAll($sql)和getAllCached($sql, $cached = 'FILEFIRST'):获取所有记录。
getRow($sql, $limited = false)和getRowCached($sql, $cached = 'FILEFIRST'):获取单行记录。
getCol($sqlse)和getColCached($sql, $cached = 'FILEFIRST'):获取某栏位的所有值。
getOne($sql, $limited = false)和getOneCached($sql, $cached = 'FILEFIRST'):获取单个数值。
query($sql):执行数据库查询。
autoExecute($table, $field_values, $mode = 'INSERT', $where = ''):数据库表操作。
现在我们以实例的方式来说明这些方法如何使用。首先,在ecshop/admin目录下新增文件test_mysql.php,文件内容如下:

 

 获取所有记录
getAll方法用来从数据库中获取满足条件的所有记录。getAllCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单行记录
getRow方法用来从数据库中获取满足条件的单行记录,或者说是第一条记录。getRowCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取某栏位的所有值
getCol方法用来从数据库中获取满足条件的某个栏位的所有值。getColCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单个值
getOne方法用来从数据库中获取满足条件的单个值。getOneCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 执行数据库查询
query方法用来执行数据库查询,例如INSERT,UPDATE,DELETE等。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 数据库表操作
autoExecute方法用来简化对数据表的INSERT和UPDATE。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



上一篇PHP - this,self,parent三个关键字之间的区别
下一篇PHP - 序列化和反序列化
主题推荐数据库ecshopmemcached数据邮件
猜你在找
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
核心技术类目
全部主题 Hadoop AWS 移动游戏 Java Android iOS Swift 智能硬件 Docker OpenStack VPN Spark ERP IE10 Eclipse CRM JavaScript 数据库 Ubuntu NFC WAP jQuery BI HTML5 Spring Apache .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap
个人资料
 访问我的空间 
amonest
 
访问:29853次
积分:453分
排名:千里之外
原创:15篇转载:2篇译文:0篇评论:6条
文章搜索

文章分类
C/C++(1)
ECShop(2)
Linux(2)
MySQL(1)
PHP(7)
Python(1)
随笔(2)
文章存档
2011年06月(7)
2011年05月(3)
2011年04月(4)
2011年02月(3)
阅读排行
ECShop - 数据库操作类(6966)
PHP - HTTP_REFERER(6031)
PHP - urlencode和rawurlencode的区别(4046)
PHP - 解决中文乱码问题(2455)
PHP - Iterator接口的解释(1917)
PHP - 获取和设置include_path(1457)
PHP - 序列化和反序列化(766)
PHP - this,self,parent三个关键字之间的区别(676)
PHP - MySQL数据结构转成HTML(649)
MySQL - 安装PHPMyAdmin 3.3.10(448)
评论排行
PHP - Iterator接口的解释(2)
PHP - 获取和设置include_path(1)
Linux - 设置Ubuntu的IP地址(1)
ECShop - 数据库操作类(1)
PHP - 序列化和反序列化(1)
Python摘要(0)
MySQL - 安装PHPMyAdmin 3.3.10(0)
PHP - phpini设置时区(0)
童言童语(0)
C语言教程(0)
推荐文章
最新评论
PHP - Iterator接口的解释
jsonyv: 尼玛这也要叫原创,就是将官方文档贴到这里,csdn好多水货。。
ECShop - 数据库操作类
asiabaa: 非常不错!
PHP - Iterator接口的解释
Y2D4M4X8: 不错,学习了
PHP - 序列化和反序列化
zhzhi2008: 有通过C#来做的例子吗?
PHP - 获取和设置include_path
javaUTU: linux中在/etc/php.ini里改include_path,然后重启服务器,就可以直接用DB...
Linux - 设置Ubuntu的IP地址
amonest: 不错!
公司简介|招贤纳士|广告服务|银行汇款帐号|联系方式|版权声明|法律顾问|问题报告|合作伙伴|论坛反馈
网站客服 杂志客服 微博客服 webmaster@csdn.net 400-600-2320
京 ICP 证 070598 号
北京创新乐知信息技术有限公司 版权所有
江苏乐知网络技术有限公司 提供商务支持
Copyright © 1999-2014, CSDN.NET, All Rights Reserved GongshangLogo
  
amonest的专栏以积极的心态来做事;只做一件事;每一天都在冲刺;想到就去做吧,岁月不会饶人;学习贵在持之以恒!
目录视图摘要视图订阅
博客专家福利     专访徐宜生:坚决不做代码搬运工      有奖试读&征文:我们在互联网上奋斗的故事      微信开发者大会深圳站即将开幕
 ECShop - 数据库操作类
分类: ECShop 2011-04-15 16:29 6966人阅读 评论(1) 收藏 举报
数据库usersqlemailinsertfunction
ECShop v2.7.2没有使用一些开源的数据库操作类,比如adodb或者PEAR,而是封装了自己的实现。这样做的好处是实现非常轻量,只有一个文件,27Kb,大大减小了分发包的文件大小。另外,当网站需要做memcached缓存时,也可以很方便的实现。当然,这样做的后果就是数据库的选择非常狭窄,无法实现其它的非MySQL数据库。

 

ECShop的数据操作类文件是includes/cls_mysql.php,类名是cls_mysql。该类主要提供了下面 一些比较有用的方法:

getAll($sql)和getAllCached($sql, $cached = 'FILEFIRST'):获取所有记录。
getRow($sql, $limited = false)和getRowCached($sql, $cached = 'FILEFIRST'):获取单行记录。
getCol($sqlse)和getColCached($sql, $cached = 'FILEFIRST'):获取某栏位的所有值。
getOne($sql, $limited = false)和getOneCached($sql, $cached = 'FILEFIRST'):获取单个数值。
query($sql):执行数据库查询。
autoExecute($table, $field_values, $mode = 'INSERT', $where = ''):数据库表操作。
现在我们以实例的方式来说明这些方法如何使用。首先,在ecshop/admin目录下新增文件test_mysql.php,文件内容如下:

 

 获取所有记录
getAll方法用来从数据库中获取满足条件的所有记录。getAllCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单行记录
getRow方法用来从数据库中获取满足条件的单行记录,或者说是第一条记录。getRowCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取某栏位的所有值
getCol方法用来从数据库中获取满足条件的某个栏位的所有值。getColCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单个值
getOne方法用来从数据库中获取满足条件的单个值。getOneCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 执行数据库查询
query方法用来执行数据库查询,例如INSERT,UPDATE,DELETE等。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 数据库表操作
autoExecute方法用来简化对数据表的INSERT和UPDATE。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



上一篇PHP - this,self,parent三个关键字之间的区别
下一篇PHP - 序列化和反序列化
主题推荐数据库ecshopmemcached数据邮件
猜你在找
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
核心技术类目
全部主题 Hadoop AWS 移动游戏 Java Android iOS Swift 智能硬件 Docker OpenStack VPN Spark ERP IE10 Eclipse CRM JavaScript 数据库 Ubuntu NFC WAP jQuery BI HTML5 Spring Apache .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap
个人资料
 访问我的空间 
amonest
 
访问:29853次
积分:453分
排名:千里之外
原创:15篇转载:2篇译文:0篇评论:6条
文章搜索

文章分类
C/C++(1)
ECShop(2)
Linux(2)
MySQL(1)
PHP(7)
Python(1)
随笔(2)
文章存档
2011年06月(7)
2011年05月(3)
2011年04月(4)
2011年02月(3)
阅读排行
ECShop - 数据库操作类(6966)
PHP - HTTP_REFERER(6031)
PHP - urlencode和rawurlencode的区别(4046)
PHP - 解决中文乱码问题(2455)
PHP - Iterator接口的解释(1917)
PHP - 获取和设置include_path(1457)
PHP - 序列化和反序列化(766)
PHP - this,self,parent三个关键字之间的区别(676)
PHP - MySQL数据结构转成HTML(649)
MySQL - 安装PHPMyAdmin 3.3.10(448)
评论排行
PHP - Iterator接口的解释(2)
PHP - 获取和设置include_path(1)
Linux - 设置Ubuntu的IP地址(1)
ECShop - 数据库操作类(1)
PHP - 序列化和反序列化(1)
Python摘要(0)
MySQL - 安装PHPMyAdmin 3.3.10(0)
PHP - phpini设置时区(0)
童言童语(0)
C语言教程(0)
推荐文章
最新评论
PHP - Iterator接口的解释
jsonyv: 尼玛这也要叫原创,就是将官方文档贴到这里,csdn好多水货。。
ECShop - 数据库操作类
asiabaa: 非常不错!
PHP - Iterator接口的解释
Y2D4M4X8: 不错,学习了
PHP - 序列化和反序列化
zhzhi2008: 有通过C#来做的例子吗?
PHP - 获取和设置include_path
javaUTU: linux中在/etc/php.ini里改include_path,然后重启服务器,就可以直接用DB...
Linux - 设置Ubuntu的IP地址
amonest: 不错!
公司简介|招贤纳士|广告服务|银行汇款帐号|联系方式|版权声明|法律顾问|问题报告|合作伙伴|论坛反馈
网站客服 杂志客服 微博客服 webmaster@csdn.net 400-600-2320
京 ICP 证 070598 号
北京创新乐知信息技术有限公司 版权所有
江苏乐知网络技术有限公司 提供商务支持
Copyright © 1999-2014, CSDN.NET, All Rights Reserved GongshangLogo
  
amonest的专栏以积极的心态来做事;只做一件事;每一天都在冲刺;想到就去做吧,岁月不会饶人;学习贵在持之以恒!
目录视图摘要视图订阅
博客专家福利     专访徐宜生:坚决不做代码搬运工      有奖试读&征文:我们在互联网上奋斗的故事      微信开发者大会深圳站即将开幕
 ECShop - 数据库操作类
分类: ECShop 2011-04-15 16:29 6966人阅读 评论(1) 收藏 举报
数据库usersqlemailinsertfunction
ECShop v2.7.2没有使用一些开源的数据库操作类,比如adodb或者PEAR,而是封装了自己的实现。这样做的好处是实现非常轻量,只有一个文件,27Kb,大大减小了分发包的文件大小。另外,当网站需要做memcached缓存时,也可以很方便的实现。当然,这样做的后果就是数据库的选择非常狭窄,无法实现其它的非MySQL数据库。

 

ECShop的数据操作类文件是includes/cls_mysql.php,类名是cls_mysql。该类主要提供了下面 一些比较有用的方法:

getAll($sql)和getAllCached($sql, $cached = 'FILEFIRST'):获取所有记录。
getRow($sql, $limited = false)和getRowCached($sql, $cached = 'FILEFIRST'):获取单行记录。
getCol($sqlse)和getColCached($sql, $cached = 'FILEFIRST'):获取某栏位的所有值。
getOne($sql, $limited = false)和getOneCached($sql, $cached = 'FILEFIRST'):获取单个数值。
query($sql):执行数据库查询。
autoExecute($table, $field_values, $mode = 'INSERT', $where = ''):数据库表操作。
现在我们以实例的方式来说明这些方法如何使用。首先,在ecshop/admin目录下新增文件test_mysql.php,文件内容如下:

 

 获取所有记录
getAll方法用来从数据库中获取满足条件的所有记录。getAllCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单行记录
getRow方法用来从数据库中获取满足条件的单行记录,或者说是第一条记录。getRowCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取某栏位的所有值
getCol方法用来从数据库中获取满足条件的某个栏位的所有值。getColCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 获取单个值
getOne方法用来从数据库中获取满足条件的单个值。getOneCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。

 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 执行数据库查询
query方法用来执行数据库查询,例如INSERT,UPDATE,DELETE等。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



 

 数据库表操作
autoExecute方法用来简化对数据表的INSERT和UPDATE。 

将下面的代码加到test_mysql.php的最后:



修改以后的test_mysql.php执行结果如下:



上一篇PHP - this,self,parent三个关键字之间的区别
下一篇PHP - 序列化和反序列化
主题推荐数据库ecshopmemcached数据邮件
猜你在找
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
核心技术类目
全部主题 Hadoop AWS 移动游戏 Java Android iOS Swift 智能硬件 Docker OpenStack VPN Spark ERP IE10 Eclipse CRM JavaScript 数据库 Ubuntu NFC WAP jQuery BI HTML5 Spring Apache .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap
个人资料
 访问我的空间 
amonest
 
访问:29853次
积分:453分
排名:千里之外
原创:15篇转载:2篇译文:0篇评论:6条
文章搜索

文章分类
C/C++(1)
ECShop(2)
Linux(2)
MySQL(1)
PHP(7)
Python(1)
随笔(2)
文章存档
2011年06月(7)
2011年05月(3)
2011年04月(4)
2011年02月(3)
阅读排行
ECShop - 数据库操作类(6966)
PHP - HTTP_REFERER(6031)
PHP - urlencode和rawurlencode的区别(4046)
PHP - 解决中文乱码问题(2455)
PHP - Iterator接口的解释(1917)
PHP - 获取和设置include_path(1457)
PHP - 序列化和反序列化(766)
PHP - this,self,parent三个关键字之间的区别(676)
PHP - MySQL数据结构转成HTML(649)
MySQL - 安装PHPMyAdmin 3.3.10(448)
评论排行
PHP - Iterator接口的解释(2)
PHP - 获取和设置include_path(1)
Linux - 设置Ubuntu的IP地址(1)
ECShop - 数据库操作类(1)
PHP - 序列化和反序列化(1)
Python摘要(0)
MySQL - 安装PHPMyAdmin 3.3.10(0)
PHP - phpini设置时区(0)
童言童语(0)
C语言教程(0)
推荐文章
最新评论
PHP - Iterator接口的解释
jsonyv: 尼玛这也要叫原创,就是将官方文档贴到这里,csdn好多水货。。
ECShop - 数据库操作类
asiabaa: 非常不错!
PHP - Iterator接口的解释
Y2D4M4X8: 不错,学习了
PHP - 序列化和反序列化
zhzhi2008: 有通过C#来做的例子吗?
PHP - 获取和设置include_path
javaUTU: linux中在/etc/php.ini里改include_path,然后重启服务器,就可以直接用DB...
Linux - 设置Ubuntu的IP地址
amonest: 不错!
公司简介|招贤纳士|广告服务|银行汇款帐号|联系方式|版权声明|法律顾问|问题报告|合作伙伴|论坛反馈
网站客服 杂志客服 微博客服 webmaster@csdn.net 400-600-2320
京 ICP 证 070598 号
北京创新乐知信息技术有限公司 版权所有
江苏乐知网络技术有限公司 提供商务支持
Copyright © 1999-2014, CSDN.NET, All Rights Reserved GongshangLogo
  

评论(0)

您可以在评论框内@您的好友一起参与讨论!

<--script type="text/javascript">BAIDU_CLB_fillSlot("927898");