如何在 visual studio 中找到要连接的 Informix 数据源
How to find informix datasource in visual studio to connect to
我想将 EF6
与 Informix
数据库一起使用。
我搜索了很多,发现我可以得到
EntityFramework.IBM.DB2 6.0.2 来自 NuGet 的 Informix
和 DB2
但我的主要问题是 连接
如何创建到我的 informix
数据库的连接 我找不到任何供 .net 使用的提供程序?
I want to get a window like this :
:
My current window :
Notes:
- 我使用的是informix server版本:IBM Informix Dynamic Server Version
12.10.FC3
- 我使用的informix客户端SDK版本:3.50
- 我用的是Visual studio2012
- .net 框架 4.5
EDIT :根据建议:
我运行C:\Windows\SysWOW64\odbcad32.exe
并配置我的 ODBC
但仍然无法通过 V.S 访问 informix DB
:
编辑2:
根据建议,我已经安装了 IBM Informix Software Bundle
并能够通过 View -->Server Explorer
连接到 visual studio 并找到所有表。但是当我尝试更改数据时仍然找不到 informix odbc通过 Entity framework 来源,如下所示:
假设CSDK安装成功,我怀疑ODBC Administrator工具的64位版本是运行ning,而安装的是32位IBM驱动. 32 位驱动程序将仅在 32 位版本的 ODBC 管理器工具中可见 运行。 Microsoft 在其 OS,但 64 位版本是从菜单启动的版本。 (请参阅超级用户的相关问题:https://superuser.com/q/419832)。
您可以从命令提示符 运行 32 位版本:
%windir%\SysWOW64\odbcad32.exe
当您添加 DSN 时,您应该会看到 IBM 驱动程序,就像您发布的 XP 屏幕截图中那样。
此外,请确保您输入 %windir%\SysWOW64
目录的完整路径或 cd
。否则,您将启动 64 位版本,顺便说一下,它也称为 odbcad32.exe
.
编辑
Visual Studio 2012 仅作为 32 位应用程序提供。 32 位应用程序看不到使用默认 64 位 ODBC 管理器工具创建的任何数据源。
两个重要的警告......
- 确保您运行正在使用 32 位 ODBC 管理工具。如果您只需在命令提示符下键入
odbcad32.exe
,您将 运行 使用该工具的 64 位 版本。请务必使用完整路径启动它:%windir%\SysWOW64\odbcad32.exe
.
- 如果您的数据源是 系统 DSN,请尝试将其创建为 用户 DSN。在 VS 2012 and VS 2010.
的服务器资源管理器中查看系统 DSN 的用户似乎有问题
编辑 2
我回顾了一下,认为您的环境中仍然缺少一些要求。 IBM 提供了很多客户端软件包,您可能非常需要其中一个比 "IBM Database Add-Ins for Visual Studio".
更全面的软件包
我会下载并安装位于 http://www-01.ibm.com/support/docview.wss?uid=swg21385217 的“IBM 数据服务器客户端”。根据 IBM 的描述……
This is the all in one client package and includes all the client
tools and libraries available. It includes add-ins for Visual Studio.
我能够下载 IBM 数据服务器客户端。具体来说,我选的就是这个
IBM Data Server Client (Windows AMD 64)
ibm_data_server_client_winx64_V10.5.zip (576 MB)
由于此软件包于 2012-04-30 发布,我建议应用最新的修复包:http://www-01.ibm.com/support/docview.wss?rs=4020&uid=swg27016878
我认为您不需要 IBM Informix .NET 提供程序。请参阅此 IBM tech article 中的 "Table 1"。本文还介绍了连接到 Informix 和使用 Visual Studio 插件。
编辑 5: 为了获得与您正在寻找的完全相同的屏幕并与 Visual Studio 完全集成,您现在要求很高,您将需要安装 IBM Data Server .NET Provider for Informix,它没有 Developer Edition。您只能获得 试用版,除了常规 开发者注册 之外,还需要额外的注册信息。
请参阅下面 link 中的详细完整信息,包括 Visual Studio 和 IBM Informix[= 之间完全相同的集成屏幕72=] 您正在寻找:Get started with the IBM Data Server .NET Provider for Informix
编辑 4: 测试 ODBC 连接的代码片段:
private void Form1_Load(object sender, EventArgs e)
{
try
{
string connString = "Dsn=IFMX32;uid=informix";
string cmd = "select * from syschfree";
OdbcConnection conn = new OdbcConnection(connString);
OdbcDataAdapter adapter = new OdbcDataAdapter(cmd, conn);
conn.Open();
DataTable table = new DataTable();
adapter.Fill(table);
dataGridView1.DataSource = table;
}
catch (Exception ex)
{
Debug.WriteLine(ex.ToString());
}
}
编辑 3: 我能够按照使用 "bundle" 包 Informix Developer Edition 之前的说明建立 ODBC 连接for Windows 32 Version 12.10TC5DE 其中不仅包括客户端 SDK,还包括测试服务器。如下图所示,我连接到 sysmaster 数据库。无论您是否需要测试服务器,也许您都应该安装这个 32 位捆绑包,因为它可能会安装一些额外的组件,使您能够连接。
这里有一些关于如何在 ODBC 数据源管理工具中配置连接的详细信息:
编辑 2: 32 位客户端 SDK 产生的结果与之前显示的结果完全相同。
编辑 1: 您可能想尝试一下:
假设您的客户端 SDK 已正确安装,那么您应该能够看到您的驱动程序,如下所示。就我而言,版本 4.10 Developer Edition(64 位)。
然后使用您的驱动程序和数据库信息创建一个用户数据源,如下所示:
最后,在 Visual Studio 中,您新创建的数据源应该可用:
我没有可用于进一步测试的服务器,但同样,您可以试一试。
目前 Visual Studio 集成和 Entity Framework 支持仅通过使用使用 DRDA 协议的 IBM DS 驱动程序(IBM 数据服务器客户端)。
Informix Client SDK 中包含的驱动程序使用称为 SQLI 的本机协议。
您可以在安装 IBM DS Driver 后尝试。
不幸的是,IBM DS 驱动程序在 Informix 服务器上的功能有限。
我想将 EF6
与 Informix
数据库一起使用。
我搜索了很多,发现我可以得到
EntityFramework.IBM.DB2 6.0.2 来自 NuGet 的 Informix
和 DB2
但我的主要问题是 连接
如何创建到我的 informix
数据库的连接 我找不到任何供 .net 使用的提供程序?
I want to get a window like this :
:
My current window :
Notes:
- 我使用的是informix server版本:IBM Informix Dynamic Server Version 12.10.FC3
- 我使用的informix客户端SDK版本:3.50
- 我用的是Visual studio2012
- .net 框架 4.5
EDIT :根据建议:
我运行C:\Windows\SysWOW64\odbcad32.exe
并配置我的 ODBC
但仍然无法通过 V.S 访问 informix DB
:
编辑2:
根据建议,我已经安装了 IBM Informix Software Bundle
并能够通过 View -->Server Explorer
连接到 visual studio 并找到所有表。但是当我尝试更改数据时仍然找不到 informix odbc通过 Entity framework 来源,如下所示:
假设CSDK安装成功,我怀疑ODBC Administrator工具的64位版本是运行ning,而安装的是32位IBM驱动. 32 位驱动程序将仅在 32 位版本的 ODBC 管理器工具中可见 运行。 Microsoft 在其 OS,但 64 位版本是从菜单启动的版本。 (请参阅超级用户的相关问题:https://superuser.com/q/419832)。
您可以从命令提示符 运行 32 位版本:
%windir%\SysWOW64\odbcad32.exe
当您添加 DSN 时,您应该会看到 IBM 驱动程序,就像您发布的 XP 屏幕截图中那样。
此外,请确保您输入 %windir%\SysWOW64
目录的完整路径或 cd
。否则,您将启动 64 位版本,顺便说一下,它也称为 odbcad32.exe
.
编辑
Visual Studio 2012 仅作为 32 位应用程序提供。 32 位应用程序看不到使用默认 64 位 ODBC 管理器工具创建的任何数据源。
两个重要的警告......
- 确保您运行正在使用 32 位 ODBC 管理工具。如果您只需在命令提示符下键入
odbcad32.exe
,您将 运行 使用该工具的 64 位 版本。请务必使用完整路径启动它:%windir%\SysWOW64\odbcad32.exe
. - 如果您的数据源是 系统 DSN,请尝试将其创建为 用户 DSN。在 VS 2012 and VS 2010. 的服务器资源管理器中查看系统 DSN 的用户似乎有问题
编辑 2
我回顾了一下,认为您的环境中仍然缺少一些要求。 IBM 提供了很多客户端软件包,您可能非常需要其中一个比 "IBM Database Add-Ins for Visual Studio".
我会下载并安装位于 http://www-01.ibm.com/support/docview.wss?uid=swg21385217 的“IBM 数据服务器客户端”。根据 IBM 的描述……
This is the all in one client package and includes all the client tools and libraries available. It includes add-ins for Visual Studio.
我能够下载 IBM 数据服务器客户端。具体来说,我选的就是这个
IBM Data Server Client (Windows AMD 64)
ibm_data_server_client_winx64_V10.5.zip (576 MB)
由于此软件包于 2012-04-30 发布,我建议应用最新的修复包:http://www-01.ibm.com/support/docview.wss?rs=4020&uid=swg27016878
我认为您不需要 IBM Informix .NET 提供程序。请参阅此 IBM tech article 中的 "Table 1"。本文还介绍了连接到 Informix 和使用 Visual Studio 插件。
编辑 5: 为了获得与您正在寻找的完全相同的屏幕并与 Visual Studio 完全集成,您现在要求很高,您将需要安装 IBM Data Server .NET Provider for Informix,它没有 Developer Edition。您只能获得 试用版,除了常规 开发者注册 之外,还需要额外的注册信息。
请参阅下面 link 中的详细完整信息,包括 Visual Studio 和 IBM Informix[= 之间完全相同的集成屏幕72=] 您正在寻找:Get started with the IBM Data Server .NET Provider for Informix
编辑 4: 测试 ODBC 连接的代码片段:
private void Form1_Load(object sender, EventArgs e)
{
try
{
string connString = "Dsn=IFMX32;uid=informix";
string cmd = "select * from syschfree";
OdbcConnection conn = new OdbcConnection(connString);
OdbcDataAdapter adapter = new OdbcDataAdapter(cmd, conn);
conn.Open();
DataTable table = new DataTable();
adapter.Fill(table);
dataGridView1.DataSource = table;
}
catch (Exception ex)
{
Debug.WriteLine(ex.ToString());
}
}
编辑 3: 我能够按照使用 "bundle" 包 Informix Developer Edition 之前的说明建立 ODBC 连接for Windows 32 Version 12.10TC5DE 其中不仅包括客户端 SDK,还包括测试服务器。如下图所示,我连接到 sysmaster 数据库。无论您是否需要测试服务器,也许您都应该安装这个 32 位捆绑包,因为它可能会安装一些额外的组件,使您能够连接。
这里有一些关于如何在 ODBC 数据源管理工具中配置连接的详细信息:
编辑 2: 32 位客户端 SDK 产生的结果与之前显示的结果完全相同。
编辑 1: 您可能想尝试一下:
假设您的客户端 SDK 已正确安装,那么您应该能够看到您的驱动程序,如下所示。就我而言,版本 4.10 Developer Edition(64 位)。
然后使用您的驱动程序和数据库信息创建一个用户数据源,如下所示:
最后,在 Visual Studio 中,您新创建的数据源应该可用:
我没有可用于进一步测试的服务器,但同样,您可以试一试。
目前 Visual Studio 集成和 Entity Framework 支持仅通过使用使用 DRDA 协议的 IBM DS 驱动程序(IBM 数据服务器客户端)。 Informix Client SDK 中包含的驱动程序使用称为 SQLI 的本机协议。 您可以在安装 IBM DS Driver 后尝试。 不幸的是,IBM DS 驱动程序在 Informix 服务器上的功能有限。