c++ - 如何使用 CDatabase 通过 ODBC 连接到 SQL Server 数据库?
问题描述
我的程序在 Visual C++ 2008 中使用 ADO 连接到 SQL Server。现在看来 ADO 已过时,MS 建议再次使用 ODBC。
因此,我现在研究如何使用 ODBC 连接到 SQL Server。我看到有一个类 CDatabase 可以做到这一点。但是,没有好的文章介绍如何使用 CDatabase 通过 ODBC 连接到 SQL Server。
根据我的研究,似乎可以通过以下方式通过 ODBC 连接到 SQL Server:
- 通过像这样的直接连接字符串:
Driver={SQL Server Native Client 11.0};Server=myServerAddress; 数据库=我的数据库;Uid=我的用户名;密码=我的密码;
- 使用 ODBC 管理员创建 DSN(Data Source Name),然后与 DSN 连接。
那么如果 1 有效,为什么我们需要创建 DSN?
解决方案
您不需要 ODBC DSN。DSN 仅允许将 ODBC 配置外部化,例如服务器名称、驱动程序。等可以为所有 ODBC 应用程序以通用方式配置。
当您将连接字符串存储在外部文件中时,不需要使用 DSN,这样可以在不更改代码的情况下配置特定于环境的值。无论使用何种技术,请务必保护机密而不是存储为明文。
推荐阅读
- sccm - 使用来自 PXE 的 SCCM TS 重新映像 PC 并使用相同的 PC 名称重命名
- dart - 飞镖排序方法中使用的算法是什么?
- swift - SWIFT DateFormatter.dateFormat 格式有变化吗?
- javascript - 使用 React 导出异步函数,(运行 npm build 时出错)
- plc - 在结构化文本中清除整个结构的最佳方法是什么
- sql-server - 返回远程检查后查询在不同的DB中运行
- keycloak - Keycloak - 使用 API 调用从用户中添加/删除领域角色
- html - 使用 aria 时如何更改宽度和框?
- python - 如何拆分被分隔符包围的字符串
- flutter - 为什么文本有大字体的黄色下划线?