Laravel的事务处理求解.

WBOY
Libérer: 2016-06-06 20:24:56
original
1490 Les gens l'ont consulté

<code>public function store(Request $request, $id)
{
    $externalAccount = ExternalAccounts::find($id);
    DB::beginTransaction();
    try {
        $externalAccount->fund_number = 999;
        $externalAccount->capital_balance = 'kjhkjhkj';
        $externalAccount->save();
        DB::commit();
    } catch (Exception $e){
       DB::rollback();
       throw $e;
    }
}

第一次用Laravel。。
capital_balance字段为int类型,我故意传进去字符串类型,这样写入肯定会出错的。
但是上面的fund_number居然写入成功了,没有回滚= =。。
求老司机解答。。
mysql引擎没错,是InnoDB。</code>
Copier après la connexion
Copier après la connexion

回复内容:

<code>public function store(Request $request, $id)
{
    $externalAccount = ExternalAccounts::find($id);
    DB::beginTransaction();
    try {
        $externalAccount->fund_number = 999;
        $externalAccount->capital_balance = 'kjhkjhkj';
        $externalAccount->save();
        DB::commit();
    } catch (Exception $e){
       DB::rollback();
       throw $e;
    }
}

第一次用Laravel。。
capital_balance字段为int类型,我故意传进去字符串类型,这样写入肯定会出错的。
但是上面的fund_number居然写入成功了,没有回滚= =。。
求老司机解答。。
mysql引擎没错,是InnoDB。</code>
Copier après la connexion
Copier après la connexion

我估计是mysql的坑,你拿生成好的sql直接到mysql里面去执行一下看看

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal