要想实现数据库的操作,必须首先初始化数据模型。

一、yii的数据库模型的初始化有两种。第一种是利用模型的静态方法model;第二种是实例化一个新的模型。以例子说明:

            //数据的查询关键代码
$goods_model = Goods::model();
$goods_infos = $goods_model -> findAll(); //数据的添加关键代码
$goods_model = new Goods();
$goods_model ->goods_name = 'xiaoming';
$goods_model ->save(); //数据的修改关键代码
$goods_model = Goods::model();
$goods_info = $goods_model -> findByPk($id);
$goods_info ->goods_name = 'xiaozhang';
$goods_info -> save();//这里注意用的是原有的数据对象($goods_info),而添加时用的是新的数据模型对象($goods_model); //数据的删除关键代码
$goods_model = Goods::model();
$goods_info = $goods_model -> findByPk($id);
$goods_info -> delete();

这里初始化数据模型的时候,只有添加数据的时候用到了new Goods();其他时候都是用Goods::model();

另外删除和修改 都是针对具体的某个对象数据进行的操作(这里不同于TP的操作)。

二、数据查找的延伸

          /**
* 查询的具体条件设置可以用findAll
* 想要查询具体的 '字段' 用‘select’;
* 想要查询具体的 '条件' 用‘condition’
* 想要查询具体的 '排序' 用‘order’
* 想要查询具体的 '分组' 用‘group’
* 想要查询具体的 '限制' 用‘limit’
* 想要查询具体的 '偏移量' 用‘offset’
*/
$goods_infos = $goods_model -> findAll(array(
'select' => 'goods_name , id',
'condition' => 'id < 5',
'order' => 'id desc',
'group' => 'goods_category',
'limit' => '3',
'offset' => '1',
));
05-15 01:41