命令行自动生成model模型类

php yii gii/model --ns=app\\modules\\v1\\models --tableName=SCM_tbInvBalance_new --modelClass=SCMTbInvBalanceNew

1、relation使用方法
```
CategoryController: /**
* @ hasMany 关系
*/
public function actionGetproduct(){
$modelCategory = new Category();
$category = $modelCategory::find()->where(['cid'=>1])->one();
$product = $category->getProduct()->andWhere('status=1')->all();
var_dump($product);
} Category(Model): public function getProduct(){
return $this->hasMany(Product::className(), array('cid'=>'cid'));
} ``` 2、Yii2.0 数据库查询
```
User::find()->all(); 此方法返回所有数据; User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子); User::find()->where(['name' => '小伙儿'])->one(); 此方法返回 ['name' => '小伙儿'] 的一条数据; User::find()->where(['name' => '小伙儿'])->all(); 此方法返回 ['name' => '小伙儿'] 的所有数据; User::find()->orderBy('id DESC')->all(); 此方法是排序查询; User::findBySql('SELECT * FROM user')->all(); 此方法是用 sql 语句查询 user 表里面的所有数据; User::findBySql('SELECT * FROM user')->one(); 此方法是用 sql 语句查询 user 表里面的一条数据; User::find()->andWhere(['sex' => '男', 'age' => '24'])->count('id'); 统计符合条件的总条数; User::find()->andFilterWhere(['like', 'name', '小伙儿']); 此方法是用 like 查询 name 等于 小伙儿的 数据 User::find()->one(); 此方法返回一条数据; User::find()->all(); 此方法返回所有数据; User::find()->count(); 此方法返回记录的数量; User::find()->average(); 此方法返回指定列的平均值; User::find()->min(); 此方法返回指定列的最小值 ; User::find()->max(); 此方法返回指定列的最大值 ; User::find()->scalar(); 此方法返回值的第一行第一列的查询结果; User::find()->column(); 此方法返回查询结果中的第一列的值; User::find()->exists(); 此方法返回一个值指示是否包含查询结果的数据行; User::find()->batch(10); 每次取 10 条数据 User::find()->each(10); 每次取 10 条数据, 迭代查询
$userModel = 'app\modules\v1\models\Tbuser';
$user = $userModel::find('fsShopGUID', 'fsUserId')->where(['fsUserId' => $userName, 'fsShopGUID' => $fsShopGUID])->asArray()->one()//查询获取一条记录
$userAll = $userModel::find('fsShopGUID', 'fsUserId')->where(['fsUserId' => $userName, 'fsShopGUID' => $fsShopGUID])->asArray()->all()//查询获取所有满足条件的记录

新增 
$connection->createCommand()->insert('SCM_tbParamValue', [ 'fsParamId' => $account_code, 'fsParamValue' => $set_status, 'fiStatus' => 1, 'fsCreateUserId' => $this->user['fsUserId'], 'fsCreateTime' => date('Y-m-d H:i:s'), 'fsCreateUserName' => $this->user['fsUserName'], 'fsShopGUID' => $this->user['fsShopGUID'],])->execute();
批量新增
$connection->createCommand()->batchInsert('SCM_tbInvBalance', ['fsYYMM', "fsStorageId", 'fsMaterialId', "fsMaterialName", "fsModelno", "fsUnitId", "fiStatus", "fdBeginQty", "fdBeginBal","fdEndQty", "fdEndBal", "fsCreateTime", "fsCreateUserId", "fsCreateUserName", "fsShopGUID","fdBeginCost","fdEndCost"], $InvBalance )->execute();
更新
$modify = [ 'fsParamValue' => $set_status, 'fsUpdateTime' => date('Y-m-d H:i:s'), 'fsUpdateUserId' => $this->user['fsUserId'], 'fsUpdateUserName' => $this->user['fsUserName'] ];
$connection->createCommand()->update('SCM_tbParamValue', $modify, '"fsParamId"=:fsParamId and "fsShopGUID"=:fsShopGUID', [':fsParamId' => $query['fsParamId'], ':fsShopGUID' => $this->user['fsShopGUID']])->execute();
删除
$connection->createCommand()->delete('SCM_tbInvBalance', '"fsShopGUID" = \'' . $this->user['fsShopGUID'] . '\'')->execute();

yii框架模型操作的更多相关文章

  1. ThinkPHP框架模型连贯操作(八)

    原文:ThinkPHP框架模型连贯操作(八) Thinkphp的连贯操作使用起来也是很灵活: *可能这里有的mysql函数没全部罗列出来,大家可以举一反三,形式雷同 一.常用连贯操作 1.where ...

  2. Yii 框架学习--01 框架入门

    Yii 是一个高性能的,适用于开发 WEB2.0 应用的 PHP 框架. Yii目前有两个主要的版本: 2.0 和 1.1.本文以YII 2.0.7为例. 环境需求 Yii2.0 框架有一些系统上的需 ...

  3. YII框架源码分析(百度PHP大牛创作-原版-无广告无水印)

           YII 框架源码分析    百度联盟事业部——黄银锋 目 录 1. 引言 3 1.1.Yii 简介 3 1.2.本文内容与结构 3 2.组件化与模块化 4 2.1.框架加载和运行流程 4 ...

  4. Yii框架tips(转)

    yii的一些小的技巧 http://www.yiichina.com/topic/151 db组件 'schemaCachingDuration'=>3600, 为什么不起做用?需要开缓存 如何 ...

  5. Yii框架tips

    db组件 'schemaCachingDuration'=>3600, 为什么不起做用?需要开缓存 如何在页面下边显示sql的查询时间在log组件的routes中加入 array('class' ...

  6. yii框架基本操作

    <?php namespace app\controllers; use yii\web\Controller; use app\models\DemoForm; use app\models\ ...

  7. 关于Yii框架的基础知识

    第一次写博文,也不知道怎么写,不太熟悉,带小伙伴学习一样我日常使用的Yii框架. PHP中的开发框架有很多,比如:ThinkPHP.Yii.CI.Laravel.Phalcon等.现在流行度最高的是L ...

  8. PHP开发框架之YII框架学习——碾压ThinkPHP不是梦

      前  言 JRedu 程序猿是一种慵懒的生物!能少敲一行代码,绝对不会多敲一个字符!所以,越来越多的开发框架应运而生,在帮助我们完成功能的同时,极大程度上也帮我们节省了人力物力,而且也提高了系统的 ...

  9. YII框架的使用

    YII框架的使用 spit: 吐痰,吐口水, 过去式: spat spat: 本身也可以作为一个单词, 意思是: "小打小闹""小的吵闹""小争吵&q ...

随机推荐

  1. Java并发编程(七)线程封闭

    当访问共享的可变数据时,通常需要使用同步.一种避免使用同步的方式就是不共享数据. 如果仅在单线程内访问数据,就不需要同步.这种技术被称为线程封闭(Thread Confinement),它是实现线程安 ...

  2. Ubuntu17 root ssh

    Ubuntu provides OpenSSH (OpenBSD Secure Shell) in its universe repositories, which is a suite of sec ...

  3. JavaScript 对大小写敏感。

    JavaScript 对大小写是敏感的. 当编写 JavaScript 语句时,请留意是否关闭大小写切换键. 函数 getElementById 与 getElementbyID 是不同的. 同样,变 ...

  4. 使用Salt-ssh部署Salt-minion之yum安装(一)

    一.RPM安装篇 使用salt-ssh功能要求客户端系统python版本2.6+ 1.salt-minion端环境: 系统:CentOS 6.5 64bit python版本:2.6.6 2.配置/e ...

  5. CentOS 6.5 Git源码安装

    首先清除系统自带git,使用如下命令 yum -y remove git 一.下载Git源码包 wget https://www.kernel.org/pub/software/scm/git/git ...

  6. chrome远程调试按inspect后出现的界面为空白,应如何解决?

    使用chrome进行远程调试命令: chrome://inspect 编辑hosts文件,添加: Hosts文件路径:C:\Windows\System32\drivers\etc\hosts 61. ...

  7. Andriod - 创建自定义控件

    控件和布局的继承结构: 可以看到,我们所用的所有控件都是直接或间接继承自 View的,所用的所有布局都是直接或间接继承自 ViewGroup 的.View 是 Android 中一种最基本的 UI 组 ...

  8. 使用jenkins进行Android的持续集成

    关于持续集成的定义和意义可以参考它的 百度百科 主要意义有以下几点: 减少风险 减少重复过程 任何时间.任何地点生成可部署的软件 增强项目的可见性 建立团队对开发产品的信心 持续集成的实施 持续集成的 ...

  9. Kotlin——初级篇(三):数据类型详解

    任意一种开发语言都有其数据类型,并且数据类型对于一门开发语言来说是最基本的构成,同时也是最基础的语法.当然,Kotlin也不例外.Kotlin的数据类型和Java是大致相同的,但是他们的写法不同,并且 ...

  10. set集合可以添加重复元素

    set集合判断元素的唯一性要重写hashcode和equals方法,这样就能保证不会加入重复的元素, 但是在以下这种情况下任然可以加入重复元素,即使他们的hashcode和equals方法结果相同 p ...