您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Node.js调用mysql存储过程返回值

bubuko 2022/1/25 20:06:29 mysql 字数 1656 阅读 822 来源 http://www.bubuko.com/infolist-5-1.html

直接调用SQL语句和调用存储过程返回数据格式不一样。直接调用语句返回值是这样的:select语句:[ RowDataPacket { fields: 116 } ]update语句:OkPacket { fieldCount: 0, affectedRows: 1, insertId: 0, ser ...

直接调用SQL语句和调用存储过程返回数据格式不一样。
直接调用语句返回值是这样的:
select语句:
[ RowDataPacket { fields: 116 } ]

update语句:
OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 0,
  serverStatus: 34,
  warningCount: 0,
  message: ‘(Rows matched: 1  Changed: 1  Warnings: 0‘,
  protocol41: true,
  changedRows: 1 }

insret语句:
OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 0,
  serverStatus: 2,
  warningCount: 0,
  message: ‘‘,
  protocol41: true,
  changedRows: 0 }

存储过程返回是这样的:
[ [ RowDataPacket { st: 1 } ],    //存储过程里面最后一条select语句取回的值
  OkPacket {
    fieldCount: 0,
    affectedRows: 0,
    insertId: 0,
    serverStatus: 34,
    warningCount: 0,
    message: ‘‘,
    protocol41: true,
    changedRows: 0 } ]


从上面的结果可以看出,取用SQL语句和存储过程的返回值写法也不可能一样。
取SQL返回值:
 let ret = rows[0].field;
取存储过程返回值
 let ret = rows[0][0].field;

Node.js调用mysql存储过程返回值

原文:https://www.cnblogs.com/sundp/p/12463027.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶