yii2 + mysql 常用增删改查操作语法以及事务

来源:互联网 发布:淘宝怎么买高仿 编辑:程序博客网 时间:2024/05/20 09:46


关于数据库mysql的使用:

1.查询:

Salesorderitem::find()->asArray()->where(['order_id'=>$order_id])->all();Salesorderitem::find()->asArray()->where(['order_id'=>$order_id])->one();Quote::findOne(['customer_id' => $customer_id]);


2.插入:

$order = new Salesorder();$order->order_status = $order_status;$order->store = $store;$order->save();$order_id = Yii::$app->db->getLastInsertID(); $db->createCommand('INSERT INTO customer (name) VALUES (:name)', [    ':name' => 'Qiang',])->execute();


 

3更新:

3.1

 Yii::$app->db->createCommand()->update(self::QUOTE_ITEM, ['qty' => $qty,'row_weight'=>$row_weight,'base_row_total'=>$base_row_total,'row_total'=>$row_total,], 'quote_id='.self::$_quote_id.' and item_id='.$item_id  )->execute();


3.2// to update an existing customer record

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


// equivalent to $custmer->update();

4. 删除:

Quoteitem::deleteAll('quote_id='.self::$_quote_id.' and  item_id='.$item_id);


注:使用mysql的时候一定要注意sql注入攻击的屏蔽


# 开始事务

  $innerTransaction = Yii::$app->db->beginTransaction();        try {            # 保存quoteitems            self::removeQuoteItems($data['item_id']);            # 获取quoteitems ,保存到 self::$_quote_items            self::getQuoteItems();            # 保存 quote            self::saveQuote();            $innerTransaction->commit();        } catch (Exception $e) {            $innerTransaction->rollBack();        }



 


0 0
原创粉丝点击