首页 > 数据库技术 > 详细

Daject初探 - 一个开源关系型数据库对象关系映射(ORM)模型

时间:2014-03-03 16:25:36      阅读:534      评论:0      收藏:0      [点我收藏+]

Daject简介

Daject是用php写的一个关系型数据库抽象模型,通过该模型,可以在不写任何SQL或写很少的SQL就能执行大多数数据库查询操作。Daject具有面向对象,跨数据库的优点,通过数据库驱动的支持,代码能够非常方便的在主流的各种关系型数据库之间迁移。

github地址:https://github.com/kasonyang/Daject

如何Daject

假定数据库里有一张名为user的表,字段为id,name,age,主键为id

首先,我们先将Daject引入

include ‘Daject/Daject.php‘;

然后,我们创建一个Table模型

class UserTable extends DajectTableBase{
    protected $keys = array(‘id‘);
}

注意类的名称,命名规则为:表名+Table

为了能够正常使用Daject查询数据,我们需要先对Daject进行初始化。

bubuko.com,布布扣
//新增一个数据库
DajectConfig::addDatabase(‘master‘, ‘mysql‘, ‘localhost‘, ‘root‘, ‘your_password‘, ‘your_database_name‘, ‘utf8‘);
//设置当前数据库
DajectConfig::setDatabase(‘master‘, ‘master‘);
//设置当前数据库前缀
DajectConfig::setTablePrefix(‘‘);
bubuko.com,布布扣

接下来,我们就可以对数据库进行CURD操作了

bubuko.com,布布扣
//实例化UserTable
$table = new UserTable();
//读取user表的前10条记录
$data = $table->select(10);
foreach($data as $d){
    echo ‘id:‘,$d[‘id‘],‘;name:‘,$d[‘name‘];
}

//插入一条记录
$table->insert(array(‘name‘ => ‘张三‘,‘age‘ => 20));

//增加where条件
$table->where(array(‘name‘=>‘张三‘));

//更新数据
$table->update(array(‘age‘=>25));

//删除数据
$table->delete();
bubuko.com,布布扣

注意看上面的代码,整个代码中并未出现任何SQL语句,但是我们已经完成了常见的select,insert,update,delete操作。事实上,当我们访问select(),insert(array),update(array)和delete方法时,Daject会自动为我们生成SQL并执行,然后返回数据给我们。由于不用写SQL,大大的减少了我们在写SQL上浪费的时间,同时降低了SQL语法错误的概率。

当然,上面只是Daject的一些基本操作,还有更多的关于Daject的知识,我会在以后的文章给大家慢慢分享!

Daject初探 - 一个开源关系型数据库对象关系映射(ORM)模型,布布扣,bubuko.com

Daject初探 - 一个开源关系型数据库对象关系映射(ORM)模型

原文:http://www.cnblogs.com/kason/p/3577359.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!