基礎YII2資料庫操作

2021-07-23 09:26:44 字數 1018 閱讀 9986

注意:為了保持精度,從資料庫中取出的資料都被表示為字串,即使相應的資料庫列型別數值。

當建立從乙個帶引數的sql乙個db命令,你應該總是使用繫結引數的方法來防止sql注入攻擊。

>|引數繫結是通過預處理語句來實現。除了防止sql注入攻擊,也可通過一次準備sql語句和多次使用不同的引數執行它提高效能

yii\db\command::bindvalue():繫結乙個引數值

yii\db\command::bindvalues():在乙個呼叫繫結多個引數值

yii\db\command::bindparam():類似的 yii\db\command::bindvalue(),而且還支援繫結引數引用。

//不太常用

->bindvalue(':id', $_get['id'])

->bindvalue(':status', 1)

->queryone();

// 不太常用

$params = [':id' => $_get['id'], ':status' => 1];

->bindvalues($params)

->queryone();

$params = [':id' => $_get['id'], ':status' => 1];

->queryone();

// 不太常用

->bindparam(':id', $id);

$id = 1;

$post1 = $command->queryone();

$id = 2;

$post2 = $command->queryone();

//一般使用這個

$sql ='insert into } (username,password_hash) values (:username,:password_hash)'; // insert update delete 都可以使用這個

yii2資料庫遷移

yii migrate create create test table 建立乙個資料庫遷移 yii migrate 提交所有的遷移 yii migrate m160623 034801 create test table 指定類名,提交乙個遷移 yii migrate down 還原最近一次遷移 ...

Yii2資料庫查詢有關的操作

注 下文所說的article為model 本文中的dd 函式,為我自己自定義的函式 function dd var 1 防止sql注入,用站位符的方式 id request get id sql select from article where id id r article findbysql ...

yii2資料庫增刪改查詢操作

簡單的說 1.先配置好資料庫 位置在config db.php 更改如下 return class yii db connection dsn mysql host localhost dbname music username root password root charset utf8 2.新...