博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sequelize update 原生sql 没有返回值
阅读量:7251 次
发布时间:2019-06-29

本文共 2502 字,大约阅读时间需要 8 分钟。

hot3.png

1.使用sequelize 原生的sql 语句操作,想获取返回值看看更新结果,但是获取不到,代码如下

// 测试修改    test2: async (req, res, next) => {        await mysql.transaction(async (t) => {             let w = await mysql.query('UPDATE user_wallet_occr SET money = money + :money WHERE id =:id', {             // mysql.query('select * from user_wallet_occr  WHERE id =:id', {                replacements: {                    money : 1,                    id: 'c72c2df6-32dc-4066-94d7-554d09e03400',                },                type: mysql.QueryTypes.UPDATE,                transaction: t            })            if (w){                console.log(w)            }else{                console.log('w is null')            }            res.ok('ok')        }).catch(err => {            console.log('err', err.message)            res.fail('fail')        })    }

输出结果

Executing (76c973f3-f1cd-436f-9653-d1eee2b33660): START TRANSACTION;Executing (76c973f3-f1cd-436f-9653-d1eee2b33660): SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;Executing (76c973f3-f1cd-436f-9653-d1eee2b33660): SET autocommit = 1;Executing (76c973f3-f1cd-436f-9653-d1eee2b33660): UPDATE user_wallet_occr SET money = money + 1 WHERE id ='c72c2df6-32dc-4066-94d7-554d09e03400'w is nullExecuting (76c973f3-f1cd-436f-9653-d1eee2b33660): COMMIT;

2.如果使用 sequelize 的 Model 类可以获取返回值。

103133_RTId_263874.png

测试代码如下

// 测试修改    test2: async (req, res, next) => {        await mysql.transaction(async (t) => {            let w = await UserWalletOccrModel.update({                m: 3            }, {                where: {                    id: 'c72c2df6-32dc-4066-94d7-554d09e03400'                },                transaction: t            })            console.log('w1>>',w)            if (w) {                console.log('w>>',JSON.stringify(w))            } else {                console.log('w is null')            }            res.ok('ok')        }).catch(err => {            console.log('err', err.message)            res.fail('fail')        })    }

输出

Executing (8e59d047-00a4-44f6-ac5a-d497f4f0677e): START TRANSACTION;Executing (8e59d047-00a4-44f6-ac5a-d497f4f0677e): SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;Executing (8e59d047-00a4-44f6-ac5a-d497f4f0677e): SET autocommit = 1;Executing (8e59d047-00a4-44f6-ac5a-d497f4f0677e): UPDATE `user_wallet_occr` SET `m`=3 WHERE `id` = 'c72c2df6-32dc-4066-94d7-554d09e03400'w1>> [ 1 ]w>> [1]Executing (8e59d047-00a4-44f6-ac5a-d497f4f0677e): COMMIT;

 

【备注】

1.原始sql ,insert和update 都没有返回值。

转载于:https://my.oschina.net/u/263874/blog/1549465

你可能感兴趣的文章
扬帆起航,再踏征程(四)
查看>>
Objective-C基础笔记(2)@property和@synthesize
查看>>
Android系统开发(1)——GCC编译器的编译和安装过程
查看>>
详解Python模块导入方法
查看>>
mysql一些权限相关操作,数据库可以远程连接或者说用IP地址可以访问
查看>>
关于c#(vs)dategridview控件继承不能修改的问题
查看>>
JAVA通过使用sort方法排序
查看>>
跨域CORS 、第二章
查看>>
一秒去除Win7快捷方式箭头
查看>>
Linux上Simplescalar/ARM的安装和运行文档
查看>>
中断是CPU的机制
查看>>
DoD and DoR
查看>>
Python学习笔记【第二篇】:运算符、比较、关系运算符
查看>>
golang 资源
查看>>
关于FileFOutputStream应用中的FileNotFoundException问题
查看>>
[产品设计] - 设计理念
查看>>
关于gitblit成功启动,但在阿里云外网地址无法访问的问题
查看>>
C++访问MySql
查看>>
1056. 组合数的和(15)
查看>>
Git基础教程(一)
查看>>