[請益] 關於laravel資料庫query非同步問題

作者: herbacin (herbacin)   2017-09-16 15:05:20
想請問一下各位, 我目前是使用 larvavel 5.2 跑 task job
也就是排程的部分, 但發現一個很奇怪的問題,
就是為什麼我的sql執行會變成非同步,
舉例來說
<?php
Use Illuminate\Support\Facades\DB;
DB::beginTransaction();
DB::delete(DB::raw($delete_sql));
DB::commit();
for ($i = 0; $i <=2 ; $i++) {
DB::insert(DB::raw($insert_sql));
}
php是單執行緒的程式,
但執行這個task會發生insert完資料, 再跑delete,
導致table是被清空的
請問是要調整什麼參數來設定db query同步與非同步嗎
有大大知道嗎, 謝謝
但我手動補跑task 又會正常
php artisan tt:test
作者: tkdmaf (皮皮快跑)   2017-09-16 16:51:00
你有測試insert是成功的?
作者: herbacin (herbacin)   2017-09-16 16:56:00
有喔, 不是每次table都會被清空有時被清空 有時是有資料 所以我覺得很怪
作者: locklose (允)   2017-09-18 11:20:00
如果你要保證行為的順序,包transaction吧
作者: herbacin (herbacin)   2017-09-18 23:58:00
我有用transaction了 我修正了 還是不行

Links booklink

Contact Us: admin [ a t ] ucptt.com