2016-09-08 32 views
3

私はSequelizeを使用してMS SQLストアドプロシージャを呼び出すのに苦労しています。これは私が通常SSMSからストアドプロシージャを呼び出す方法ですSequelizeを使用してMSSQLストアドプロシージャを呼び出す方法

USE [MYDB] 
GO 

DECLARE @return_value int 

EXEC @return_value = [dbo].[GetThings_ByLocation] 
     @BeginDate = N'2016-06-23', 
     @EndDate = N'2016-07-09', 
     @LocationID = NULL 

SELECT 'Return Value' = @return_value 

GO 

私はsequelizeを使用してこの呼び出しを行いますか?

+0

下記のstackoverflowに関するご質問と簡単な回答をご覧ください。置換機能を使用できるので、パラメータをフォーマットする必要はありません。 [ストアドプロシージャを続行する](http://stackoverflow.com/questions/42538525/sequelize-sytax-for-calling-stored-procedure-with-input-parameters-using-mssql/42538850#42538850) – Kentonbmax

答えて

3

SequelizeはMS SQLを使用するためにnem package Tedious(https://www.npmjs.com/package/tedious)を使用します。データベースへの接続は他のものと同じです。

ロークエリを使用すると、ストアドプロシージャの結果を取得できます。

sequelize.query('GetThings_ByLocation @BeginDate=\'2016-08-01\', @EndDate=\'2016-08-07\', @LocationID=NULL;') 
    .then(function(result) { 
     console.log('RESULT', result); 
    }) 
    .error(function(err) { 
     console.log(err); 
    }); 
+0

ありがとうあなたのような見知らぬ人 – aliirz

+0

.spread(function(result){。....の代わりに.then(function(result){......が良い選択肢になるでしょう – prodeveloper

関連する問題