我正在使用节点js连接到仅具有Windows身份验证的SQL Server。数据库存储在集中式机器上。SQL Server与jQuery和节点js的连接
数据库返回一些json数据,我把它放在某个地址(http://10.2.9.208:8081/me)。这是我个人电脑的地址,即(https://localhost/me),我使用jQuery调用来检索它。
这个jQuery调用是从一个HTML页面检索jsonp格式的数据,以避免交叉来源问题。
这是我的jQuery呼叫并在页面index12.html
$.get("http://10.2.9.208:8081/me?callback=?", function (data) {
dataset_module_errors = data;
});
在页面的连接字符串是app.js
我用来与数据库连接我的连接字符串是
var config = {
server: '10.2.12.153',
database: 'DFMProAnalyticsCopy', // my table is within this server
port: 1433 // default port number
};
因为它认为用户密码为'' - >空字符串,所以会引发错误'LOGIN ERROR'。
所以我最终用这个对于Windows身份验证
var config =
"Driver={SQL Server Native Client 11.0};
Server=10.2.12.153,1433;
Database=DFMProAnalyticsCopy;
Trusted_Connection={Yes}";
现在,这引发了两个错误 - >
- ConnectionError:未知的驱动程序的SQL Server Native Client的11.0!
- GET http://10.2.9.208:8081/me?callback=? 500(内部服务器错误)
我已经提到How to find the ODBC driver name for a connection string?找到驱动程序名称并验证了两次。
当我通过JQuery调用访问安装在我的PC上的本地数据库时,所有这一切都工作得很好。我的PC上有用户SQL身份验证.Windows身份验证提供错误
login failed for user ''
当通过节点js访问时。
我在访问中央数据库时犯了一些错误。
请指导我完成它。
编辑1:由于这是Windows身份验证,我没有用户名或密码
你想使用ODBC名称或直接连接?为了连接抛出ODBC,你的连接字符串只包含ODBC别名。如果直接连接看你的SQL客户端版本并正确写入Driver =。 –
嗨,我只写了SQL客户端的驱动程序名称。我不明白我怎么才能找到驱动程序的名称,否则,如果不使用ODBC –
这是连接刺*使用* dot * * net * * odbc *?例如:Driver = {SQL Server}; Server = 10.0.0.1; Database = myDB; Uid = db_login; Pwd = db_passw(可能是登录名和密码必须使用) –