2015-08-28 30 views
0

我想用Qt打开一个SQL压缩服务器文件.sdf。 我有以下代码:Qt如何打开SQL压缩服务器文件.sdf

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); 
db.setDatabaseName("C:\\testresults.sdf"); 
bool Success = db.open(); 

sprintf(writeToMonitorBuffer, "dblastError = %s", (const char *)db.lastError().text().toLatin1()); 
writeToMonitor(writeToMonitorBuffer); 

sprintf(writeToMonitorBuffer, "db.open(): Success/Fail = %s", Success ? "Pass" : "Fail"); 
writeToMonitor(writeToMonitorBuffer); 

我收到错误消息:

dblastError = [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified QODBC3: Unable to connect 

我也得到:

db.open(): Success/Fail = Fail 

我该如何解决这个问题?

+1

你应该返工后有代码的正确格式化,几乎是不可读这样的.. –

+0

以前我用过
db.setDatabaseName(“Driver = {Microsoft Access Driver(* .mdb,* .accdb)}; DSN =''; DBQ = C:\\ temp \\ TestEng_TestDatabase.accdb” );用于连接到访问数据库的 。看起来像我应该做的, db.setDatabaseName(“Driver = {SQL Server(* .sdf)}; DSN =''; DBQ = C:\\ testresults.sdf”); 但我不确定什么Driver = {???}为sdf文件。 –

回答

1

\被用于C++ escape sequences,所以你需要做的是这样的,而不是:

db.setDatabaseName("C:\\testresults.sdf");

相关问题