C#连接Informix数据库
最近在工作中遇到了需要连接Informix数据库的问题,在通过研究后发现了可以通过多种方式实现,我选择的是通过IBM Informix .NET Provider。该方式需要引用IBM.Data.Informix.dll。
using IBM.Data.Informix;
using System;
namespace InformixLinkTest
{
class Program
{
static void Main(string[] args)
{
try
{
// Open a connection
IfxConnection conn = new IfxConnection(
"Host=127.0.0.1;Service=9098;"
+ "Server=informixserver;Database=MyDatabase;"
+ "User ID=informix;password=MyPassword;db_locale=en_us.819"
);
conn.Open();
IfxDataReader rd;
using (IfxCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from simpletable";
rd = cmd.ExecuteReader();
rd.Read();
do
{
if (rd.HasRows)
{
///Assuming the table has two columns
Console.WriteLine("{0}", rd[]);
} } while (rd.Read());
}
conn.Close();
}
catch (IfxException e)
{
Console.WriteLine(e.ToString());
Console.ReadLine();
}
}
}
在调试过程中会发现出现异常(System.DllNotFoundException:“无法加载 DLL“IfxDotNetIntrinsicModule.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。”),具体如图:,通过提示可以看到找不到IfxDotNetIntrinsicModule.dll,我通过在安装Informix数据库的路径中找到了这个包放到了bin文件夹下后
,就能正常运行了。
另一个问题就是在连接串中最开始db_locale的值我是给的utf8,按照这个也会出现异常情况,异常代码为(ERROR [HY000] [Informix .NET provider][Informix]Database locale information mismatch. ),截图如下:,最后将其设置为db_locale=en_us.819后就可正常连接到informix数据库。
C#连接Informix数据库的更多相关文章
- ODBC方式连接Informix数据库
公司某个报表系统使用Informix数据库,在谋划使用Perl语言写数据采集程序后,花费了很多时间建立Perl访问Informix连接.恰巧Windows下ActivePerl的CPAN中又没有DBD ...
- JDBC连接各种数据库的方法(经典)
1)连接Oracle 8/8i/9i/10g/11g(thin模式) Class.forName("oracle.JDBC.driver.OracleDriver").newIns ...
- JDBC连接各种数据库的方法,连接MySql,Oracle数据库
JDBC连接各种数据库的方法: JDBC编程步骤: 1.导入jar包 2.注册驱动 3.获取数据库连接对象 4.定义SQL语句 5.获得执行SQL语句对象statemnet 6.执行SQL语句 7.处 ...
- [转]Java连接各种数据库的方法
//MySQL: String Driver="com.mysql.jdbc.Driver"; //驱动程序 String URL="jdbc:m ...
- java连接各种数据库代码大全
1.Oracle8/8i/9i数据库(thin模式)Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();S ...
- INFORMIX数据库常用命令
INFORMIX数据库常用命令 一.onstat命令集 1.onstat - 说明:查看数据库当前的状态 用法:onstat - 2.onstat -c 说明:查看数据库的配置文件 用法:ons ...
- Mysqldb连接Mysql数据库(转)
python操作mysql数据库 Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口. Python 数据库接口支持非常多的数据库 ...
- JAVA采用JDBC连接操作数据库详解
JDBC连接数据库概述 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供 ...
- Java连接各类数据库
几种常用数据库的连接,以及Dao层的实现. 1.加载JDBC驱动: 1 加载JDBC驱动,并将其注册到DriverManager中: 2 //MySQL数据库 3 Class.forName(&quo ...
随机推荐
- Python字典基础
- String--课后作业1
1.程序设计思想 输入一个字符串,利用charAt()提取指定位置的字符,判断该字符是否是x,y,z(大小写都一样),若是,则将该字符减23后强制转换为char型,若不是则将其加3后强制转换为char ...
- day49-线程-事件
#1.Event里面有一个标志flag,当e = Event()刚创建的时候,flag=False,阻塞,这个时候,e.is_set()也是等于False,阻塞. #e.set()让flag变成非阻塞 ...
- 6)HTML中a链接跳转地址怎么写
(1)看 thinkphp5的 附录--->助手函数 --->url 利用url进行书写地址跳转: 比如,你想跳转到cate控制器下的lst方法: <a href=" ...
- windows下使用apache相关资料汇总
1.Apache httpd.conf配置详解 https://www.cnblogs.com/langren1992/p/5160912.html 2.windows下使用apache经验总结 ht ...
- crm项目-stark组件
############### admin基本认识和常用的定制功能 ############### stark组件 对admin的基本认识 1,就是一个app,嵌入到了django里面,你可以 ...
- Hypothesis Tests for One Population Mean When σ Is Unknown|other
9.5 Hypothesis Tests for One Population Mean When σ Is Unknown 使用t分布: What If the Assumptions Are No ...
- 微软科学家Leslie Lamport荣获2013年图灵奖
Lamport荣获2013年图灵奖" title="微软科学家Leslie Lamport荣获2013年图灵奖"> 编者按:Leslie Lamport,新晋图灵奖 ...
- deeplearning.ai 序列模型 Week 2 NLP & Word Embeddings
1. Word representation One-hot representation的缺点:把每个单词独立对待,导致对相关词的泛化能力不强.比如训练出“I want a glass of ora ...
- Mysql————基本sql语句
mysql中的基本语法有四种: 1.DDL语句:(用CREAT和DROP操作的语句) 用于创建.修改.和删除数据库内的数据结构,如:1:创建和删除数据库(CREATE DATABASE || DROP ...