connect to sql server

0

Witam! próbuje połączyć się z bazą danych wg tutoriala na yt.
następujący kod:

    QString servername = "MAREK-KOMPUTER\\SQLEXPRESS";
    QString dbname = "baza";
    QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
    db.setConnectOptions();
    QString dsn = QString("DRIVER=(SQL Native Client);SERVER=%1;DATABASE=%2; Trusted_Connection=YES;").arg(servername).arg(dbname);
    db.setDatabaseName(dsn);
    if (db.open())
    {
        QMessageBox::information(this, "", "Open!" );
        db.close();
    }
    {
        QMessageBox::information(this, "", "fail! " + db.lastError().text());
        db.close();
    } 

Zwraca MessageBox'a: [Microsoft][Menadżer sterowników ODBC] Nie można odnaleźć nazwy źródła danych, a nie ma podanego sterownika domyślnego QODBC3: Unable to connect Czy to connection string jest zły?

0

Uruchom u siebie ten kod:

QSqlDatabase db;
QStringList list=db.drivers();
qDebug() << list;

I sprawdź czy masz QODBC3 i QODBC na liście.

1

na liscie sa:

QSQLITE
QODBC3
QODBC

EDIT:
ok sprawa rozwiązana, pomogła zmiana connection stringa na :
QString conn = QString("DRIVER={SQL SERVER};SERVER=%1;DATABASE=%2;").arg(servername).arg(dbname);

1 użytkowników online, w tym zalogowanych: 0, gości: 1