Node.js SQL Server单引号问题与准备查询



我正在尝试使用node.js从SQL Server数据库中提取数据,并将数据传递给Google Chatbot。

SQL Server查询这是我看起来像

INSERT INTO @Return
SELECT 'You' + '' + 've assigned ' + CONVERT(varchar(4), COUNT(1)) + ' to yourself'

这个函数将数据发送到谷歌聊天机器人。

function GbWebhookFunction(){
this.sendMessage = async function(strMessage){
console.log(strMessage);
fetch(webhookURL, {
method: 'POST',
headers: {
'Content-Type': 'application/json; charset=UTF-8',
},
body: "{'text': '" + strMessage + "'}",
}).then((response) => {
console.log(response);
});
};
};

这个输出:

Youve assigned X to yourself

我试图将下面的代码添加到我的函数中,但这不起作用。

strMessage = strMessage.replace("", "'");

我从我的SQL查询中删除了一个,但输出:

Youe assigned X to yourself

从SQL查询中删除时的输出

关于如何用单引号替换的任何想法?

在您的查询中您忘记添加单引号。查询很可能是

INSERT INTO @Return
SELECT 'You've assigned ' + CONVERT(varchar(4), COUNT(1)) + ' to yourself'

编辑

基于一些提供的错误,我建议使用双单引号。这意味着SQL查询应该如下所示:
INSERT INTO @Return
SELECT 'You''ve assigned ' + CONVERT(varchar(4), COUNT(1)) + ' to yourself'

最新更新