Visual c++ 使用odbc访问远程数据库

Visual c++ 使用odbc访问远程数据库,visual-c++,mfc,odbc,Visual C++,Mfc,Odbc,我正在为我的项目开发一个新工具,使用mfc访问rempte数据库,读取内容并以所需格式显示。我不熟悉使用mfc编程。为此,我尝试使用odbc访问远程数据库。为了访问数据库,我在控制面板中注册了数据源。当我在我的系统中运行这个应用程序时,它工作正常,我得到了所需格式的结果 现在,当我试图从另一个系统打开这个应用程序时,我得到了一个错误。应用程序崩溃 是否可以使用odbc api创建一个通用应用程序,以便在不注册数据库的情况下从任何地方访问数据库?或者我应该对此应用程序仅使用ole dB 提前感谢。

我正在为我的项目开发一个新工具,使用mfc访问rempte数据库,读取内容并以所需格式显示。我不熟悉使用mfc编程。为此,我尝试使用odbc访问远程数据库。为了访问数据库,我在控制面板中注册了数据源。当我在我的系统中运行这个应用程序时,它工作正常,我得到了所需格式的结果

现在,当我试图从另一个系统打开这个应用程序时,我得到了一个错误。应用程序崩溃

是否可以使用odbc api创建一个通用应用程序,以便在不注册数据库的情况下从任何地方访问数据库?或者我应该对此应用程序仅使用ole dB


提前感谢。

使用ODBC访问远程数据源是完全可能的,许多ODBC驱动程序使用有线协议与另一台机器上的数据库进行通信。ODBCAPI是通用的,从驱动程序中抽象出应用程序,因此也可以编写一个可以使用任何ODBC驱动程序的通用ODBC应用程序。ODBC的体系结构在应用程序和实际ODBC驱动程序之间使用一个驱动程序管理器,以进一步抽象并将应用程序与驱动程序中的某些特定差异隔离开来

现在,也就是说,要使用ODBC连接到远程数据源,ODBC驱动程序必须能够与远程数据源通信。这将根据ODBC驱动程序的不同而有所不同,一些驱动程序将能够使用,而一些仅用于本地源,例如用于本地文件的驱动程序


关于您的实际问题,如果您能提供有关您正在使用的驱动程序、连接方式、错误以及任何其他相关详细信息的详细信息,我们可以帮助您解决问题。

我转到“控制面板”->“数据源”,并添加了用户DSN。由于数据库位于SQL Server中,因此我从列表中选择了SQL Server驱动程序。我在应用程序中使用了这个DSN。我知道这只是我的机器本地的。如何更改连接字符串和DSN以便可以从任何计算机访问?我的连接字符串是
connectString=\u T(“DSN=SqlServerTest;UID=;PWD=;APP=Microsoft\x00ae Visual Studio.NET;WSID=;DATABASE=”)