Résolu: l'exécution de la requête échoue lorsque vous essayez d'écrire à partir de qt vers la database MS SQL dans les windows utilisant ODBC

Je me connecte à ma database MSSQL avec odbc et écrit des données. Je ne suis pas sûr pourquoi je reçois l'erreur:

QODBCResult::exec: unable to bind variable: “[Microsoft][ODBC SQL Server Driver]Optional feature not implemented” bool DataManager::registerClient(Client&) “INSERT INTO ClientMaster (first_name, mid_name, last_name, phone_number, email_id, address_line1, address_line2, address_line3, dob) VALUES (xxx, xxx , xxx, +xxx-xxx, xx, xx, x, x, 1987-08-30)” bool DataManager::registerClient(Client&) error “[Microsoft][ODBC SQL Server Driver]Optional feature not implemented QODBC3: Unable to bind variable” mDatabase = QSqlDatabase::addDatabase("QODBC"); mDatabase.setDatabaseName("DRIVER={SQL SERVER};SERVER=localhost;DATABASE=GLINK_CLIENT_MGMNT;"); mDatabase.setUserName("sa"); mDatabase.setPassword("123456"); if(!mDatabase.open()) 

est ma partie de connection de database et ci-dessous est ma partie d'exécution de requête.

  QSqlQuery query(mDatabase); query.prepare("INSERT INTO ClientMaster (first_name, mid_name, last_name, phone_number, " "email_id, address_line1, address_line2, address_line3, dob) " "VALUES (:first_name, :mid_name, :last_name, :phone_number, :email_id, " ":address_line1, :address_line2, :address_line3, :dob)"); QSsortingng phoneNumber = "+"; phoneNumber.append(client.phoneCode); phoneNumber.append("-"); phoneNumber.append(client.phoneNumber); query.bindValue(":first_name", client.firstName); query.bindValue(":mid_name", client.midName); query.bindValue(":last_name", client.lastName); query.bindValue(":phone_number", phoneNumber); query.bindValue(":email_id", client.emailId); query.bindValue(":address_line1", client.addressLine1); query.bindValue(":address_line2", client.addressLine2); query.bindValue(":address_line3", client.addressLine3); query.bindValue(":dob", client.dob); regStatus = query.exec(); 

Le problème a été résolu. J'espère que le cas ci-dessous est la raison spécifique de la question.

J'ai donné une input de date au format ( yyyy-MM-dd ), c'est-à-dire:

 query.bindValue(":dob", client.dob.toSsortingng(yyyy-MM-dd)); 

Je suis venu à savoir que MSSQL prend la date dans le format particulier seulement. Je ne suis pas certain à ce sujet, mais cela fonctionne bien maintenant.