:
[ConnectionError: Login failed for user ''. The user is not associated with a trusted SQL Server connection.]
name: 'ConnectionError',
message: 'Login failed for user \'\'. The user is not associated with a trusted SQL Server connection.',
code: 'ELOGIN' }
は、ここに私のコードです。試してみてくださいedge
とedge-sql
- それは私のために働いています。 Be sure you install all the required packages。そこから
https://github.com/tjanczuk/edge
https://github.com/tjanczuk/edge-sql
、それはかなりsteamlinedています。
var edge = require('edge');
var params = {
connectionString: "Server=YourServer;Database=YourDB;Integrated Security=True",
source: "SELECT TOP 20 * FROM SampleData"
};
var getData = edge.func('sql', params);
getData(null, function (error, result) {
if (error) { console.log(error); return; }
if (result) {
console.log(result);
}
else {
console.log("No results");
}
});
EDIT
うーん... 10日に私のオリジナルの答えの後、明らかにmssql
は、パッケージにWindowsの認証を追加しました。彼らは私たちの叫び声を聞いた:) See here。私はまだそれをテストしていませんが、統合をテストするために正式にバックログに入っています。私は報告する。 mssql
がニーズに合っている場合、私は1として、それで行くだろう
FWTW、)edge-sql
は2年間の休眠となっており、2)主な要因は、以来、彼はもはや彼は、この「in the caring hands of Microsoft」のようなプロジェクトを残していると述べていませんそこで働く。
EDIT 2
この保持upvotesを取得し、働いていないか、Windows上で動作していないいずれかの他の回答コード例のいくつかを言ったコメントがあります。
msnodesqlv8
もインストールしてこれは、Windows上で作業し、mssql
を使用して私のコードです:
var sql = require('mssql/msnodesqlv8');
var config = {
driver: 'msnodesqlv8',
connectionString: 'Driver={SQL Server Native Client XX.0};Server={SERVER\\NAME};Database={dbName};Trusted_Connection={yes};',
};
sql.connect(config)
.then(function() {
...profit...
})
.catch(function(err) {
// ... connect error checks
});
どこにユーザー名を入れましたか? –
SQL Serverの認証方法がWindows認証であるため、ユーザー名を入力しません。 .Netでこれは私の接続文字列を定義する方法です: "Server = localhost;統合セキュリティ= SSPI;データベース= mydatabase"。しかし、これに似た何かをNode.jsに実装する方法はわかりません。 –
ああ、私はsaアカウントを使用してSQLサーバー認証でテストしました。しかし、私はそれがWindows認証で動作する必要があります。 –