• yii1.0 yii2.0 ar


    ---------------------------------------------------------- yii ar
    $cri = new CDbCriteria;
    $cri->select = 'file_name';
    // $cri->addCondition = 'id = 8';
    $cri->addCondition("id=:id"); // = 'id = 8';
    // $cri->params[':id'] = 8;
    $cri->params = array(':id'=>8);
    $file = UserFile::model()->find($cri);



    $file = UserFile::model()->find(array(
    'select'=>'file_name',
    'condition'=>'file_path=:file_path',
    'params'=>array(':file_path'=>'/3/aaa')
    ));

    $file = UserFile::model()->findAllBySql("select * from simiyun_files where file_path like '/1/公共目录%'");
    $file = UserFile::model()->findAllBySql("select * from simiyun_files where file_path like :file_path ",array(':file_path'=>'/1/公共目录%'));
    $file = UserFile::model()->count('file_path=:path',array(':path'=>$name));
    $file = UserFile::model()->countBySql('select * from simiyun_files where file_path=:path',array(':path'=>$name));
    $file = UserFile::model()->exists('file_path=:path',array(':path'=>$name)); //($condition,$params);
    $file = UserFile::model()->updateAll(array('file_path'=>'/1/bbbaa'),'file_name=:name',array(':name'=>'bbb')); //将文件名为bbb的文件夹路径更改为‘/1/bbbaa’ 返回值为1
    $file = UserFile::model()->updateByPk(array(9,10),array('file_path'=>'/1/bbbaacc')); //将主键id为9,10的文件路径改为‘/1/bbbaacc’ 返回值为2
    $file = UserFile::model()->updateByPk(array(9,10),array('file_path'=>'/1/bbbaaccddd'),'file_name=:name',array(':name'=>'ccc'));
    $file = UserFile::model()->updateCounters(array('download_number'=>1),'file_path like :name',array(':name'=>'/1/bbbaacc%')); //将路径为‘/1/bbbaacc%’ 的文件下载次数加1
    $file = UserFile::model()->deleteByPk(8);
    $file = UserFile::model()->deleteByPk(array(8,9,10),'file_path like :path',array(':path'=>'/1/bbbaacc%'));
    Post::model()->deleteAll($condition,$params);


    2.查询


    $criteria = new CDbCriteria;
    $criteria->select='title'; // 只查询出相应的 title 字段,不要这句话讲返回整条数据
    $criteria->condition='nid=:newsID';
    $criteria->params=array(':newsID'=>5);
    $news = News::model()->find($criteria); // $params不是必须的

    $news = News::model()->find(array(
    'select'=>'title',
    'condition'=>'nid=:newsID',
    'params'=>array(':newsID'=>5),
    ));

    $post=News::model()->find($condition,$params); // 通过指定的条件进行查询
    $post=News::model()->findByPk($postID,$condition,$params); // 通过news表的primary key 进行查询
    $post=News::model()->findByAttributes($attributes,$condition,$params); // 通过指定关键值继续查询
    $post=News::model()->findBySql($sql,$params);

    $admin=Admin::model()->findAll($condition,$params);
    $admin=Admin::model()->findAllByAttributes($attributes,$condition,$params);
    $admin=Admin::model()->findAllByPk($postIDs,$condition,$params);
    $admin=Admin::model()->findBySql($sql,$params);
    $n=Post::model()->count($condition,$params);
    $n=Post::model()->countBySql($sql,$params);
    $exists=Post::model()->exists($condition,$params);

    3.添加
    $admin=new Admin;
    $admin->username=$username;
    $admin->password=$password;
    if($admin->save()>0)

    4.修改 updateAll() updateByPk() updateCounters()
    Post::model()->updateAll($attributes,$condition,$params);
    Post::model()->updateByPk($pk,$attributes,$condition,$params);
    Post::model()->updateCounters($counters,$condition,$params);

    5.删除 deleteByPk() deleteAll()
    Post::model()->deleteByPk($pk,$condition,$params);
    Post::model()->deleteAll($condition,$params);


    $sqlup = "update ".UserAdditionals::model()->tableName()." set space = {$userspace} where is_admin = 0 and user_id in ({$userstr})";
    $is_true = Yii::app()->db->createCommand($sqlup)->execute();


    ---------------------------------------------------- yii 2.0
    $db->createCommand('INSERT INTO customer (name) VALUES (:name)', [
    ':name' => 'Qiang',
    ])->execute();

    1.查询方法 where(), join(), orderBy()
    $customers = Customer::find()
    ->where(['status' => Customer::STATUS_ACTIVE])
    ->orderBy('id')
    ->all();
    $customer = Customer::find()
    ->where(['id' => 1])
    ->one();
    $count = Customer::find()
    ->where(['status' => Customer::STATUS_ACTIVE])
    ->count();
    $customers = Customer::find()->indexBy('id')->all();

    $sql = 'SELECT * FROM customer';
    $customers = Customer::findBySql($sql)->all();

    ------------------------------------
    $customer = Customer::findOne(1);
    $customer = Customer::findOne([
    'id' => 1,
    'status' => Customer::STATUS_ACTIVE,
    ]);
    $customers = Customer::findAll([1, 2, 3]);
    $customer = Customer::findAll([
    'status' => Customer::STATUS_DELETED,
    ]);
    //将查询的结果转换成json格式
    $customers = Customer::find()
    ->asArray()
    ->all();

    3.遍历
    foreach (Customer::find()->each(10) as $customer) {
    }

    4.保存,修改,删除
    $customer = new Customer();
    $customer->name = 'James';
    $customer->email = 'james@example.com';
    $customer->save();

    $customer = Customer::findOne($id);
    $customer->email = 'james@example.com';
    $customer->save();

    Customer::updateAllCounters(['age' => 1]);

    $customer = Customer::findOne($id);
    $customer->delete();
    Customer::deleteAll('age > :age AND gender = :gender', [':age' => 20, ':gender' => 'M']);

  • 相关阅读:
    一个Electron的设计缺陷及应对方案
    如何点击穿透Electron不规则窗体的透明区域
    Electron团队为什么要干掉remote模块
    Clickhouse 单机双实例
    Kafka安全认证SASL/PLAIN
    Syslog的使用
    Kafka Consumer
    Kafka Producer客户端
    Kafka客户端操作
    springboot集成flyway实践
  • 原文地址:https://www.cnblogs.com/suxiaolong/p/5124968.html
Copyright © 2020-2023  润新知