dotzero / yii-insertupdate-behavior
该软件包已被废弃,不再维护。未建议替代软件包。
Yii InsertUpdateCommandBehavior 扩展向 yii 的 CDbCommand 实现的默认功能添加了一些功能
v1.0.0
2016-04-30 07:41 UTC
Requires
- php: >=5.3.0
- yiisoft/yii: >=1.1.14
This package is auto-updated.
Last update: 2022-06-04 08:33:56 UTC
README
InsertUpdateCommandBehavior 扩展向 yii 的 CDbCommand 实现的默认功能添加了一些功能。创建并执行一个带 ON DUPLICATE KEY UPDATE
的 MySQL 插入语句。
要求
安装
通过 composer 安装
$ composer require dotzero/yii-insertupdate-behavior
将供应商路径和导入路径添加到您的配置文件中
'aliases' => array( ... 'vendor' => realpath(__DIR__ . '/../../vendor'), ), 'import' => array( ... 'vendor.dotzero.yii-insertupdate-behavior.*', ),
基本用法
$command = Yii::app()->db->createCommand(); $command->attachBehavior('InsertUpdateCommandBehavior', new InsertUpdateCommandBehavior); $command->insertUpdate('tbl_user', array( 'name'=>'Tester', 'email'=>'tester@example.com', 'counter'=>'1' ), array( 'name'=>'Tester', 'email'=>'tester@example.com' ));
创建并执行一个带 ON DUPLICATE KEY UPDATE
的 MySQL 插入语句
INSERT INTO `tbl_user` (`name`, `email`, `counter`) VALUES ('Tester', 'tester@example.com', 1) ON DUPLICATE KEY UPDATE `name`='Tester', `email`='tester@example.com';
高级用法
$command = Yii::app()->db->createCommand(); $command->attachBehavior('InsertUpdateCommandBehavior', new InsertUpdateCommandBehavior); $command->insertUpdate('tbl_user', array( 'name'=>'Tester', 'email'=>'tester@example.com', 'counter'=>'1' ), array( 'name'=>'Tester', 'email'=>'tester@example.com' 'counter'=>new CDbExpression('LAST_INSERT_ID(counter)'); ));
创建并执行一个带 ON DUPLICATE KEY UPDATE
的 MySQL 插入语句
INSERT INTO `tbl_user` (`name`, `email`, `counter`) VALUES ('Tester', 'tester@example.com', 1) ON DUPLICATE KEY UPDATE `name`='Tester', `email`='tester@example.com', `counter`=LAST_INSERT_ID(counter);
许可证
在 MIT 许可证下授权: https://open-source.org.cn/licenses/mit-license.php