0

我目前正在使用 Node.js 和 Edge.js 将硬编码值插入 SQL 数据库:

var insertUser = edge.func('sql', function () {/*
    INSERT INTO dbo.Newsletter (Email, Active, DateCreated, DateUpdated, Deleted)
    VALUES ('test2@test.com','1','2014-01-01 00:00:00','2014-01-01 00:00:00','0')
*/});

这可以正常工作。

但是,我希望这些值是先前定义的 JS 变量,而不是硬编码。所以如果我定义了这个变量:

var emailAddress = document.getElementById('emailInput').value;

我想插入它来代替硬编码的电子邮件地址(下面的问题代码):

var insertUser = edge.func('sql', function () {/*
    INSERT INTO dbo.Newsletter (Email, Active, DateCreated, DateUpdated, Deleted)
    VALUES ('emailAddress','1','2014-01-01 00:00:00','2014-01-01 00:00:00','0')
*/});

上述语法(以及各种变体)不起作用 - 是否可以使用 Node/Edge 在 SQL 中插入 JS 变量?提前谢谢了...

4

1 回答 1

1

您可以在函数中使用命名参数,如下所示:

var insertUser = edge.func('sql', function () {/*
    INSERT INTO dbo.Newsletter (Email, Active, DateCreated, DateUpdated, Deleted)
    VALUES (@emailAddress,'1','2014-01-01 00:00:00','2014-01-01 00:00:00','0')
*/});

向它传递一个带有如下参数的对象:

var emailAddress = document.getElementById('emailInput').value;
insertUser({"emailAddress": emailAddress}, callBack)
于 2014-04-03T18:26:40.467 回答