本文已移到:http://www.iifire.com
Magento 和 zend framework 的DB层都完全实现了抽象(封装成类了),这样方便我们在使用数据库资源时直接调用相关的Resource类而不用理会DB底层的具体实现方法,会用就可。但是我们有时候希望能直接使用SQL语句来从表中查询和更新数据,该怎么办呢?当然Magento中提供了相关的方法,如下:
$conn = Mage::getSingleton('core/resource')->getConnection('core_read');
上面的的语句返回 Varien_Db_Adapter_Pdo_Mysql对象的一个实例( Zend_Db_Adapter_Abstract 的子类), 该类提供了直接调用SQL语句的方法.例:
// Prints a list of all website names
$results = $conn->fetchAll("SELECT * FROM core_website;");
foreach($results as $row) {
echo $row['name'] . "\n";
}
注意上面的getConnection()方法中的参数 "core_read",表明了Magento将要使用的资源。与之相对应,当我们修改数据库的时候使用参数"core_write".一般情况下getConnection方法的参数应设成"core_read" 或 "core_write"(应该不指定也是可以的,但是如果Magento有多个数据库就必须指定了)。
作为新的entension module,在config.xml对"core_read" "core_write" 进行定义是个好的习惯。定义如下: c
<config>
<global>
<resources>
<extension_setup>
<connection>
<use>core_setup</use>
</connection>
</extension_setup>
<extension_read>
<connection>
<use>core_read</use>
</connection>
</extension_read>
<extension_write>
<connection>
<use>core_write</use>
</connection>
</extension_write>
</resources>
</global>
</config>
对应上面新增的module的名字.使用下面相对应的语句在read或write Database:
$conn = Mage::getSingleton('core/resource')->getConnection('extension_read');
$conn = Mage::getSingleton('core/resource')->getConnection('extension_write');
一般情况是绝大多数的module都定义成"core_read" "core_write"方便且节省资源。当然特殊情况除外:
- 给每个module不同的读写权限
- 需要用多个Database
分享到:
相关推荐
magento导出数据sql,magento批量导出数据,magento批量上传数据。
magento删除订单sql,通过phpmyadmin清空订单
magento SQL常用命令,数据库操作
3 专业与社群支援不像是其他的开放原始码解决方案, Magento 提供专业、可信赖的支援,您也可以从热情的社群中取得协助,国内也有Magento的爱好者创建中文社区,比如Magentoo.com。4 完整的扩充性无论网站经过了一夜...
像是产品标签、多送货地址或产品比较系统等功能,您不需要支付额外的费用来取得,在现成的 Magento 系统中,您可以发现更多。 3 专业与社群支援 不像是其他的开放原始码解决方案, Magento 提供专业、可信赖的支援...
查询订单 magento前台查询订单,方便用户前台查看订单详细内容
magento用户使用手册
magento产品名称及描述批量修改sql
在 Magento Admin 中将任何 SQL 查询结果显示为网格和图表 在 Magento 1.9.x 上安装 使用安装: $ cd /path/to/magento $ modgit init $ modgit clone querygrid ...
magento中文用户指南
magento中文手册 magento教程
有magento大师编写的免费magento中文开发教程。
magento用户中文操作手册,学习magento后台管理
本文是Magento的中文使用说明书,资料来源于网络,并对翻译错误的地方进行了修正
NULL 博文链接:https://vb2005xu.iteye.com/blog/1624479
custom-reports, 使用SQL定制Magento报告 使用Google图表 API 定制Magento报告使用custom或者使用magento管理网格( ),轻松创建报表,并使用magento来显示它们。 功能报告结果表定义列配置或者允许自动配置的能力。...
magento中文操作手册,详细介绍magento的具体操作
magento通过mysql语句批量导出产品及其自定义属性
magento最新版中文语言包 Magento (麦进斗) 是一套专业开源的电子商务系统。Magento设计得非常灵活,具有模块化架构体系和丰富的功能。易于与第三方应用系统无缝集成。其面向企业级应用,可处理各方面的需求,...
在Magento教程中用到的模块 Configviewer Layoutviewer Helloworld with Custom System Config 其他与Magento开发相关的文章 简单的EAV数据查询 清除缓存的几种方法 通过命令行来升级Magento MAGENTO数据转移 ...