+ -
当前位置:首页 → 问答吧 → SpeedPHP数据库操作教程一,简单的CRUD

SpeedPHP数据库操作教程一,简单的CRUD

时间:2009-12-08

来源:互联网

从前面的留言本例子程序,我们可以看到,SpeedPHP框架的M部分,也就是模型部分,是实现数据库操作的核心程序。
日常的数据库数据操作,就是CRUD个类型的居多。C是CREATE,创建记录;R是SELECT,读取记录;U是UPDATE,更新记录;D是DELETE,删除记录。
一、配置应用程序的数据库链接参数
首先是针对数据库链接的一些程序配置,以留言本为例子,index.php配置文件部分如下:
复制代码
  1. ...
  2. "db" => array(
  3. 'driver' => 'mysql',
  4. 'host' => 'localhost',
  5. 'login' => 'root',
  6. 'password' => '',
  7. 'database' => 'test',
  8. 'prefix' => 'spgb_'
  9. ),
  10. ...

'driver' => 'mysql',是表示该应用程序链接的数据库类型是mysql。
'host' => 'localhost',是数据库链接地址,一般为localhost。
'login' => 'root',数据库链接的用户名,
'password' => '',数据库链接的密码,用户名和密码如果不清楚,请联系主机服务商。
'database' => 'test',是当前需要链接的数据库的库名称,这也将由主机服务商提供的。
'prefix' => 'spgb_',这是当前应用程序链接的数据表的表前缀,一般在多个应用程序同时使用一个数据库的情况下,均建议使用表前缀,以更好的区分不同的应用程序对应的数据表,数据表前缀一般以下划线作为分隔。如在程序中使用的表名是“user”,按照以上配置,该数据表全名应该是“spgb_user”。
二、建立表驱动模型类
在按以上方式配置好了应用程序数据库链接参数后,开始建立各数据表的表驱动模型类。
表驱动模型类是Model部分的实现机制。可以简单的理解成一个PHP类(表驱动模型类)对应了一个数据表,然后这些类的方法,可以对该数据表进行CRUD的操作。
如留言本中的留言模型类:
复制代码
  1. <?php 
  2. class gb extands spModel{
  3. var $table = "gb";
  4. var $pk = "gid";
  5. }
  6. ?>

这些代码可以直接复制粘贴来使用,作为其他的表模型类的样板。
class gb extands spModel,定义了一个名称为gb的PHP类,并且派生自spModel这个核心类。表驱动模型类都必须是spModel的派生类。简单来说就是“ extands spModel”这些代码是必须的。
var $table = "gb",定义gb类对应的表名。当然加上数据表前缀的话,该表的全名应该是“spgb_gb”。
var $pk = "gid",定义该数据表的主键名称,一般数据表的主键都是数值类型并且是自增量。
以上三个设置,是每个表驱动模型类都必须的,而且表驱动模型类一般是放置在应用程序目录下model的目录里面。当然这也在应用程序配置中修改该位置。
三、新增,修改,删除,查询操作

定义了数据表模型类后,可以在应用程序中进行对数据表的操作了。 将使用到的方法函数有create(新增), update(修改), delete(删除), find及findAll(查找),这些都是sp开发中最常用的数据库操作函数,将在下一章节介绍它们的使用。
 
本文地址:http://speedphp.com/post/simple-crud.html 

作者: jake   发布时间: 2009-12-08