需要通过Soci连接MSSQL的帮助

时间:2016-02-24 10:50:45

标签: c++ sql-server odbc soci

今天我想到创建一个连接到MS SQL服务器的C ++应用程序,并执行检索记录和执行SPROC等功能,然后我发现这个Soci库帮助我们的应用程序与DB和i交谈还发现在Soci for MSSQL中没有特定的后端选项,与Oracle和其他人不同,我们只能通过ODBC与mssql交谈。我一直在寻找合适的文档/手册/参考资料通过soci连接到MSSQL的一步一步说明,我在Soci的母网站附近闲逛但没有出现在MSSQL中(我已经看到了这个

backend_factory const& backEnd = odbc; session sql(backEnd, "filedsn=c:\\my.dsn");

但是我的数据库是在不同的服务器上托管的,所以如果对此有所了解,将不胜感激:)

1 个答案:

答案 0 :(得分:2)

您可以使用ODBC使用如下连接字符串Soci连接到sql server:

"DRIVER=libtdsodbc.so;SERVER=MYSERVER;PORT=1433;DATABASE=my_database_name;UID=username;PWD=password"

使用Session创建功能(使用odbc as per the Soci documentation)。

其中:

  • MYSERVER是您要连接的服务器的地址/名称。
  • 1433是sqlServer的默认端口,在您的情况下可能会有所不同。
  • my_database_name是您尝试访问的数据库的名称

然后应该在ODBC驱动程序之上使用FreeTDS。 验证很有意思,默认情况下,FreeTDS将使用sql身份验证,unless there is a backslash in the user name然后它将使用Windows域登录进行身份验证EG:"DOMAIN\username"

同样有趣的是FreeTDS connection string parameters.

希望这有帮助!