Swoft 踩坑筆記四 - 資料庫
我配置了swoft/.env,
配置了swoft/.env.example,
配置了config/properties/db.php,還是說我密碼不對。
其實我是配置好了的,然後我想撤銷重來一遍然後寫出來的,結果GG了。
_(:зゝ∠) _
然後碼完上面的,去重新整理,又可以了。
_(:зゝ∠) _
所以我認為,應該是它裡面需要去生成什麼,所以需要等待。
然鵝,並不是我猜測的那樣。
問了大佬,大佬說預設是主從分離的,如果你沒有從庫,主從需要配置一樣的。怎麼樣?怕了吧?任你猜系列。
然後我配置了還是沒有效果,重啟了服務就好了。
其實只需要配置swoft/.env
主庫 DB_URI=127.0.0.1:3306/test?user=root&password=123456&charset=utf8,127.0.0.1:3306/test?user=root&password=123456&charset=utf8 從庫 DB_SLAVE_URI=127.0.0.1:3306/test?user=root&password=123456&charset=utf8,127.0.0.1:3306/test?user=root&password=123456&charset=utf8
規則:
ip:埠/資料庫名?user=使用者名稱&password=密碼&charset=utf8
拼接完修改 DB_URI 和 DB_SLAVE_URI 就行啦。
其餘引數:
DB/DB_NAME 連線池節點名稱,用於服務發現
DB/DB_URI 連線地址資訊
DB/DB_MIN_ACTIVE 最小活躍連結數
DB/DB_MAX_ACTIVE 最大活躍連線數
DB/DB_MAX_IDLE_TIME 連線最大空閒時間,單位秒
DB/DB_MAX_WAIT_TIME 連線最大等待時間,單位秒
DB/DB_MAX_WAIT 最大等待連線
DB/DB_TIMEOUT 超時時間,單位秒
傳說某寶一開始是用php寫的,後來因為資料庫壓力而更換有資料庫連線池的java。那連線池是什麼東東呢?自己百度去哈。可以緩解資料庫壓力。
配置好了就執行一下吧。
use Swoft\Db\Query;
$result = Query::table('表名')->where('id', 1)->limit(1)->get()->getResult();
其它資料庫操作
本來想講分頁的,大佬說分頁要自己寫。
天啊!我到底做錯了什麼!你要這麼折磨我!
_(:зゝ∠) _
我要棄坑!我要棄坑!嗚~~~
嘛。。不就分頁嘛,好歹我還是個寫過分頁的男銀。遙想當年。。我還是原生流派的時候。啊!不多說了。我現在是框架流,往事不堪回首,寫神馬原生啊!浪費青春!
$page = ($inputs['page'] - 1) * 10; // 一開始分頁1得0,第二次分頁2得10
// limit第一個引數是取多少條,第二引數是從第幾條開始
$result =Query::table('表名')->limit(10, $page)->get()->getResult();
return $result;