C ++ [ODBC] -MSSQLExpress 2008 SQLSTATE:28000 || 42000

时间:2015-06-12 07:38:45

标签: c++ sql windows sql-server-2008 odbc

我正在尝试开发一个程序,该程序必须从MSSQL 2008管理下创建的数据库和表中获取信息。 我不得不承认我是ODBC新手...... 如果有人能帮我解决这个问题?我尝试了两种解决方案来连接我的数据库[CodeA]和[CodeB]。我在google上找到了文档并尝试了几种解决方案,但直到现在找不到合适的解决方案。 请看下面的连接字符串。

CODEa所:

SQLDriverConnect (sqlconnectionhandle,NULL,
(SQLCHAR*)TEXT("DRIVER={SQL Server};SERVER=TOWER-PC\\SQLEXPRESS;DATABASE=tfe;UID=adminA;PWD=@Admin1;IntegratedSecurity=SSPI;"),
SQL_NTS,retconstring,1024,NULL,SQL_DRIVER_NOPROMPT)

CodeB:

SQLDriverConnect (sqlconnectionhandle,NULL,
(SQLCHAR*)TEXT("DRIVER={SQL Server};SERVER=TOWER-PC\\SQLEXPRESS;DATABASE=tfe.mdf;UID=adminA;PWD=@Admin1;Trusted_Connection=Yes;"),
SQL_NTS,retconstring,1024,NULL,SQL_DRIVER_NOPROMPT)

编解码器:

SQLDriverConnect (sqlconnectionhandle,NULL,
(SQLCHAR*)TEXT("DRIVER={SQL Server};SERVER=TOWER-PC\\SQLEXPRESS;DATABASE=tfe.mdf;Trusted_Connection=Yes;"),
SQL_NTS,retconstring,1024,NULL,SQL_DRIVER_NOPROMPT)

执行返回的SQLSTATE。 SQLSTATE 虽然这是归因于我的用户的角色: User roles

1 个答案:

答案 0 :(得分:0)

解决方案

我通过将连接字符串修改为:

解决了这个问题

"DRIVER={SQL Server};SERVER=TOWER-PC;DATABASE=tfe;UID=adminA;PWD=@Admin1;"

Helpful link