2
我試圖運行多個SQL查詢。在node.js中運行多個MSSQL查詢
問題是由於fire.and忘記node.js使用變量不斷超出範圍。我正在努力研究如何在C#中執行類似於await
關鍵字的操作。
這是我破碎的代碼,是;這應該使它更清晰,我試圖達到什麼:
function getTopicsForMessages(request, results)
{
//Get topics for this message
var queryString = "SELECT ripple_messenger.TopicTypes.name, ripple_messenger.TopicTypes.imageUri";
queryString += " FROM ripple_messenger.MessageTopics JOIN ripple_messenger.TopicTypes";
queryString += " ON (ripple_messenger.MessageTopics.topicId = ripple_messenger.TopicTypes.id)";
queryString += " WHERE messageId = ?";
for (var i = 0; i < results.length; i++)
{
mssql.query(queryString, [results[i].id],
{
success: function (topicsResults)
{
results[i].topics = topicsResults;
},
error: function (err) {
console.error("SQL Read error: " + err);
request.respond(statusCodes.INTERNAL_SERVER_ERROR, "SQL Query failed on read");
}
});
}
//Continue... once all queries have executed successfully.
}
我認爲這只是一個問題,不完全知道節點的做事方式。
我已經閱讀了幾個關於Node.js的包/選項,它們允許類似於await關鍵字的東西,但我不確定當我使用Azure移動服務時是否能夠使用它們。
我也確定我可以以某種方式在SQL中更好地執行此查詢。但是,我不太清楚如何。
提前許多感謝,
丹尼
:http://stackoverflow.com/questions/17351494/promises-pattern-in-node-js-libraries-to-use – Populus
您使用的快遞? – Dalorzo