1
我已经遵循了很多教程来开球,但我仍然无法连接到Qt的数据库。我总是得到这个错误:为什么我无法连接到我的数据库?
Closed! "[Microsoft][ODBC SQL Server Driver][DBMSLPCN]SQL Server does not exist or
access denied. [Microsoft][ODBC SQL Server Driver][DBMSLPCN]ConnectionOpen
(Connect()). [Microsoft][ODBC SQL Server Driver]Invalid connection string attribute
QODBC3: Unable to connect"
,或者如果我使用SQL本地客户端(即,而不是SQL SERVER)作为司机,我收到以下错误:
Closed! "[Microsoft][ODBC Driver Manager] Data source name not found and no default
driver specified QODBC3: Unable to connect"
已经在这里坐了几个小时试图弄清楚这一点,但我看不出我做错了什么。服务器,数据库等似乎都有正确的名称。我只是不明白为什么它没有连接。下面
#include "login.h"
#include "ui_login.h"
login::login(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::login)
{
ui->setupUi(this);
QSqlDatabase db = QSqlDatabase::addDatabase ("QODBC","Chessgames");
db.setConnectOptions();
db.setDatabaseName("DRIVER={SQL SERVER};SERVER=MYNAME\\SQLEXPRESS;DATABASE=Chessgames;Uid=sa;Password=xxxxx;");
if(db.open())
{
qDebug() << "Opened!";
db.close();
}
else
{
qDebug() << "Closed! " << db.lastError().text();
}
}
login::~login()
{
delete ui;
}
您是否已将MYNAME添加到hosts文件? SQL Server是否启用了TCP/IP? SA密码是否正确? – Max 2014-11-09 11:53:55
将MYNAME添加到hosts文件?我没有那样做。不过,我启用了tcp/ip并且sa密码正确。 – MrPickles 2014-11-09 17:38:35