2017-03-01 45 views
0

我收到以下代码的错误消息,无法找到准确的信息以通过sequelize调用MSSQL存储过程的语法。我也曾尝试syntx从其他岗位上的计算器类似于呼叫spcName(参数1,...)使用MSSQL调用具有输入参数的存储过程的setaelize sytax

错误:

(node:14580) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): SequelizeDatabaseError: Incorrect syntax near '@param1'. 

代码:

await sequelize.query('CALL spcName(@param1, @param2, @param3, @param4);', [value1, value2, value3, value4]) 

回答

0

代码如下所示并适用于MSSQL。想表现,因为格式的日期例如:

return await sequelize.query('scpTest :inDate', {replacements: {inDate: moment().subtract('d', 4).toISOString(), type: sequelize.QueryTypes.SELECT} 

下面的问题例如:

await sequelize.query('spcName :param1, :param2, :param3, :param4)', {replacements: {param1: value, param2: value, param3: value, param4: value}, type: sequelize.QueryTypes.SELECT}) 
+0

仅供参考 - 我已经登录的问题与Sequelize有关对存储过程的查询返回重复的结果集。 – Kentonbmax

+0

还记录了我的存储过程调用正在返回重复结果的问题。含有结果数组阵列或[[results],[results]] – Kentonbmax

+0

QueryTypes.SELECT的添加修复了重复结果问题。 – Kentonbmax

0

您可以尝试

await sequelize.query('CALL spcName(:params)', { replacements: {params : ['value1, value2, value3, value4']} }) 
+0

返回值不正确的语法1 – Kentonbmax

+0

hmm。这是一个与sequ​​elize无关的sql错误http://stackoverflow.com/a/19763826/4583460 –

+0

我没有复制和粘贴任何东西。 params数组的值应该是一个字符串吗? – Kentonbmax

0
async getPlayers(UserId: number, requestObject: any): Promise<any> { 
     this.sequelize = Server.sequelize; 
     try { 
      let o_rowcnt = 0; 
      let playersList = await this.sequelize.query('CALL sp_discovery (:p_user, :p_game, :p_platform, :p_headphone,:p_start,:p_end , :p_stanceId , @o_rowcnt)', 
       { 
        replacements: { 
         p_user: UserId, 
         p_game: requestObject.gameid, 
         p_platform: requestObject.platformid, 
         p_headphone: requestObject.headphone, 
         p_start: requestObject.index, 
         p_end: requestObject.limit, 
         p_stanceId: requestObject.stanceid 
        } 
       } 
      ); 
      return playersList; 
     } catch (e) { 
      return e; 
     } 
    } 
+0

你需要解释你的解决方案,而不是简单地发布代码。 –

相关问题