これは主に将来の読者のためのものです。質問(少なくともタイトル)は「ノードjsからSQLサーバーデータベースへの接続」に焦点を当てているので、「mssql」ノードモジュールについて詳しく説明したいと思います。
現時点では、NodeJ用のMicrosoft SQL Serverドライバーの安定バージョン( "msnodesql")がここで入手できます: https://www.npmjs.com/package/msnodesql 。 (他のどのノードモジュールよりも)Microsoft SQL Serverデータベースへのネイティブ統合は優れていますが、注意すべき点がいくつかあります。
「msnodesql」では、ホストマシンにいくつかの前提条件(Python、VC ++、SQLネイティブクライアントなど)をインストールする必要があります。これにより、「ノード」アプリが「Windows」に依存するようになります。 「Windows」ベースのデプロイメントに問題がない場合は、「msnodesql」を使用するのが最適です。
一方、「mssql」と呼ばれる別のモジュールがあります(ここで利用可能 https://www.npmjs .com / package / mssql )構成に基づいて「面倒な」または「msnodesql」で動作する可能性があります。このモジュールは「msnodesql」ほど包括的ではないかもしれませんが、ほとんどのニーズをほぼ解決します。
「mssql」から始めたい場合は、NodeJを使用したMicrosoftSQLServerデータベースへの接続について説明しているシンプルでわかりやすいビデオをご覧ください。
上記のビデオのソースコードは、次の場所から入手できます: http://techcbt.com/Post/341/Node-js-basic-programming-tutorials-videos/how-to-connect-to-microsoft -sql-server-using-node-js
念のため、上記のリンクが機能しない場合は、ここにソースコードを含めます:
var sql = require("mssql");
var dbConfig = {
server: "localhost\\SQL2K14",
database: "SampleDb",
user: "sa",
password: "sql2014",
port: 1433
};
function getEmp() {
var conn = new sql.Connection(dbConfig);
conn.connect().then(function () {
var req = new sql.Request(conn);
req.query("SELECT * FROM emp").then(function (recordset) {
console.log(recordset);
conn.close();
})
.catch(function (err) {
console.log(err);
conn.close();
});
})
.catch(function (err) {
console.log(err);
});
//--> another way
//var req = new sql.Request(conn);
//conn.connect(function (err) {
// if (err) {
// console.log(err);
// return;
// }
// req.query("SELECT * FROM emp", function (err, recordset) {
// if (err) {
// console.log(err);
// }
// else {
// console.log(recordset);
// }
// conn.close();
// });
//});
}
getEmp();
上記のコードはかなり自明です。 (「dbConfig」JSオブジェクトで)db接続パラメーターを定義してから、「Connection」オブジェクトを使用してSQLServerに接続します。この場合、「SELECT」ステートメントを実行するために、「Connection」オブジェクトと内部的に連携する「Request」オブジェクトを使用します。このコードは、「promise」ベースと「callback」ベースの実行の両方のフレーバーを説明しています。
上記のソースコードは、SQLサーバーデータベースへの接続とSELECTクエリの実行についてのみ説明しています。 https:/で入手できる「mssql」ノードのドキュメントに従うことで、簡単に次のレベルに進めることができます。 /www.npmjs.com/package/mssql
更新: 純粋なNode.jsREST標準(Microsoft SQL Serverを使用)を使用してCRUD操作を行う新しいビデオがここにあります: https://www.youtube.com/watch?v=xT2AvjQ7q9E 。これは、すべてを最初から説明する素晴らしいビデオです(コードがたくさんあるので、ここでコード全体を説明/コピーするのはそれほど楽しいことではありません)