gpt4 book ai didi

javascript - 如何使用 SQL 在 Node JS 中使用特定列值

转载 作者:行者123 更新时间:2023-12-02 13:46:03 25 4
gpt4 key购买 nike

我想知道如何选择特定列来保存到函数中的变量中。我需要这两个值,这就是为什么我有一个查询同时获取这两个值的原因。我将 Node JS 与 Azure SQL 数据库结合使用,并使用 tedious 作为我的 SQL NPM 插件。我对此相当陌生,因此我们将不胜感激。谢谢!

旁注:最底部返回行数的“完成时”请求没有执行任何操作。如果有人知道我为什么想知道,那并不重要,但我只是好奇。

function Charge(chipId, LocID) {
request = new Request("SELECT car_id, userOwner FROM Cars WHERE carChipId = '" + chipId + "'", function (err) {
if (err) {
console.log(err);
}
});
var result = "";
request.on('row', function (columns) {
columns.forEach(function (column) {
if (column.value === null) {
console.log('NULL');
} else {
result += column.value + " ";
}
});
console.log(result);
result = "";
});

request.on('done', function (rowCount, more) {
console.log(rowCount + ' rows returned');
});
connection.execSql(request);
}

最佳答案

尝试以下操作来选择保存到变量的特定列:

function charge(chipId) {
var carId = '';
var userOwner = '';

request = new Request(`SELECT car_id, userOwner FROM Cars WHERE carChipId = '${chipId}'`, function(err) {
if (err) {
console.log(err);
}
});

request.on('row', function(columns) {

carId = columns[0].value;
userOwner = columns[1].value;
console.log('carId: ', carId);
console.log('userOwner: ', userOwner);
});

connection.execSql(request);
}

另一个选项是,您可以将 options.useColumnNames 设置为 true(默认值:false)以将行作为键值集合返回。下面是代码示例。

var config = {
userName: '<userName>',
password: '<password>',
server: '<serverName>.database.windows.net',

options: {
encrypt: true,
database: '<database>',
useColumnNames: true
}
};

var connection = new Connection(config);

connection.on('connect', function(err) {
charge('<chipId>');
});

function charge(chipId) {
var carId = '';
var userOwner = '';

request = new Request(`SELECT car_id, userOwner FROM Cars WHERE carChipId = '${chipId}'`, function(err) {
if (err) {
console.log(err);
}
});

request.on('row', function(columns) {
carId = columns.car_id.value;
userOwner = columns.userOwner.value;
console.log('carId: ', carId, ' userOwner: ', userOwner);
});

connection.execSql(request);
}

如果您想触发Event:done,请使用connection.execSqlBatch(request)而不是connection.execSql(request)。详情请引用http://tediousjs.github.io/tedious/api-connection.html#function_execSqlBatch .

关于javascript - 如何使用 SQL 在 Node JS 中使用特定列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41388464/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com