Connexion à un serveur Microsoft SQL distant de Node.js
-
12-10-2019 - |
Question
Je me demandais si quelqu'un était au courant d'un moyen de se connecter à une base de données Microsoft SQL à partir Node.js. Je suis au courant des pilotes de MySQL, mais j'ai données que je dois tirer à partir d'une base de données MS SQL et que vous préférez tirer directement de Node.js plutôt que de pirater un script PHP d'une sorte en place.
La solution
Je suppose que vous devrez envelopper votre SQL Server avec une sortie JSON-service Web. Du côté positif, il devrait être relativement facile à faire.
bien si le moteur JavaScript Node.js pourrait faire ceci: ( Comment se connecter à la base de données SQL Server à partir de JavaScript dans le navigateur ):
var connection = new ActiveXObject("ADODB.Connection") ;
var connectionstring="Data Source=<server>;Initial Catalog=<catalog>;User ID=<user>;Password=<password>;Provider=SQLOLEDB";
connection.Open(connectionstring);
var rs = new ActiveXObject("ADODB.Recordset");
rs.Open("SELECT * FROM table", connection);
rs.MoveFirst
while(!rs.eof)
{
document.write(rs.fields(1));
rs.movenext;
}
rs.close;
connection.close;
Autres conseils
Découvrez une nouvelle option:
Je recommande noeud-MSSQL , ce qui est une belle enveloppe pour d'autres connecteurs, la valeur par défaut être mon choix précédent ( Ennuyeux ) apportant un peu plus jolie d'une interface. Ceci est un implimentation JavaScript, sans exigences de compilation, ce qui signifie que vous pouvez travailler dans les fenêtres et les environnements non-Windows aussi bien.
Une autre option, si vous ne me dérange pas apporter en .Net ou Mono avec un pont binaire serait d'utiliser est abandonné, noeud-odbc ne fonctionne pas avec les fenêtres et les MS pilote de noeud-SQLServer ne semble pas fonctionner sur les non-fenêtres (et a des exigences loufoques).
Si vous connectez à MSSQL de linux vous pouvez utiliser nœud-odbc ( https://github.com / w1nk / noeud-odbc ) avec les freetds pilote ODBC. J'utilise cette production et son emballage plus rapide que d'un service Web.
Une autre option, de Microsoft même,
http://www.microsoft.com/en- nous / télécharger / Details.aspx? id = 29995
Ou un pilote client sql linux via odbc:
http://www.microsoft.com/en- nous / télécharger / Details.aspx? id = 28160
Nouvelle réponse pour 2015: Le paquet ORM Sequelize supporte maintenant MS SQL, en utilisant le pilote de Ennuyeux sous les couvertures.
Ceci est la meilleure façon que j'ai trouvé d'interagir avec Microsoft SQL Server.
Aujourd'hui encore, j'ai publié un nouveau module, pour Windows uniquement, ce qui permet une utilisation native et asynchrone de MSSQL. Il est appelé TSQLFTW, et soutient actuellement la connexion et interrogation de la base. Il renvoie des résultats en JSON.
Découvrez ici le Github: https://github.com/gfosco/tsqlftw
Hacker soumission Nouvelles / commentaires: http://news.ycombinator.com/item?id= 3353389