ODBC方式连接Informix数据库
公司某个报表系统使用Informix数据库,在谋划使用Perl语言写数据采集程序后,花费了很多时间建立Perl访问Informix连接。恰巧Windows下ActivePerl的CPAN中又没有DBD::Informix模块,故一度陷入绝望。
有一天突然想起可以使用ODBC方式,经过一番尝试后,很快就成功建立连接。 具体方法:
1. 在Windows系统中建立ODBC数据源。需要安装Informix SDK的客户端驱动。
2. Perl访问ODBC
## 连接参数
my $data_source="DBI:ODBC:huawu";
my $user="aaa";
my $password="bbb";
my $dbh=DBI->connect($data_source,$user,$password, { AutoCommit => , PrintError => , RaiseError => } ); ## 执行查询
$cur_sql = 'select * from table_a;';
my $sth=$dbh->prepare($cur_sql);
if(! $sth->execute() ) {
die ;
} 保存记录
while (my @count = $sth->fetchrow()) {
# @count 为一条记录
}
$sth->finish(); ##关闭连接
$dbh->disconnect();
3. PHP访问ODBC
##连接参数
$odbc_server = "dbname";
$odbc_conn = odbc_connect($odbc_server, $user, $pwd); ##执行语句
$odbc_sql = 'Select * from table_a;';
$odbc_res = odbc_exec($odbc_conn, $odbc_sql); echo "<table id='MData'>";
while (odbc_fetch_row($odbc_res)) {
echo "<tr>";
echo "<td>".odbc_result($odbc_res, 1)."</td>";
echo "<td>".odbc_result($odbc_res, 2)."</td>";
echo "<td>".odbc_result($odbc_res, 3)."</td>";
echo "<td>".odbc_result($odbc_res, 4)."</td>";
echo "<td>".odbc_result($odbc_res, 5)."</td>";
echo "<td>".odbc_result($odbc_res, 6)."</td>";
echo "</tr>";
}
echo "</table>";
##关闭连接
odbc_close($odbc_conn);
PHP的ODBC函数较弱,获取查询记录集貌似只有odbc_fetch_row() 这一个函数,通过数组下标或关联数组Key访问字段。
ODBC方式连接Informix数据库的更多相关文章
- ODBC方式操作oracle数据库
ODBC方式操作oracle数据库 一.查询语句: var strConn = System.Configuration.ConfigurationManager.ConnectionStrings[ ...
- C#连接Informix数据库
最近在工作中遇到了需要连接Informix数据库的问题,在通过研究后发现了可以通过多种方式实现,我选择的是通过IBM Informix .NET Provider.该方式需要引用IBM.Data.In ...
- java thin方式连接oracle数据库
本文主要描述通过thin方式连接oracle数据库 1.创建web project ,将D:\oracle\product\10.2.0\db_1\jdbc\lib(oracle安装目录)下的ojdb ...
- jmeter中通过jdbc方式连接mysql数据库的配置参考
jmeter中通过jdbc方式连接mysql数据库的配置参考: Database URL=jdbc:mysql://ip:port/dbname?useUnicode=true&allowMu ...
- Spark JDBC方式连接MySQL数据库
Spark JDBC方式连接MySQL数据库 一.JDBC connection properties(属性名称和含义) 二.spark jdbc read MySQL 三.jdbc(url: Str ...
- Delphi XE8中的DBExpress使用ODBC方式连接MySQL 5.6.24 X64!!!!
Delphi:XE2.XE8 MySQL:5.6.24 X64 今天准备做一个使用数据库的REST程序,最开始使用XE2,后来使用XE8,但是我遇到一个让我头疼的问题,就是无法连接我要使用的数据库,这 ...
- C++ API方式连接mysql数据库实现增删改查
这里复制的 http://www.bitscn.com/pdb/mysql/201407/226252.html 一.环境配置 1,装好mysql,新建一个C++控制台工程(从最简单的弄起,这个会了, ...
- C++中用ODBC和ADO方式连接SQL数据库
https://wenku.baidu.com/view/f01e4e762f3f5727a5e9856a561252d380eb2033.html
- sqlplus 方式连接 远程数据库
方式一:简易连接,不用进行网络配置,其实就是tnsname.ora文件,但只支持oracle10G以上.命令:sqlplus 用户名/密码@ip地址[:端口]/service_name [as sys ...
随机推荐
- spring getbean 方法分析
spring 缺省: 1.spring用DefaultListableBeanFactory.preInstantiateSingletons()建立bean实例 2.缺省采用单例模式 在最近的项目中 ...
- ONIX 实例
<?xml version="1.0"?><!DOCTYPE ONIXMessage SYSTEM"http://www.editeur.org/oni ...
- 关机相关(shutdown,reboot)
慣用的關機指令: shutdown 由於Linux的關機是那麼重要的工作,因此除了你是在主機前面以tty7圖形介面來登入系統時, 不論用什麼身份都能夠關機之外,若你是使用遠端管理工具(如透過piett ...
- SQL Server 2005下载安装
好久没弄过数据库了,打算重温一下,由于是新买的笔记本,所以今天下载安装了一下哈. 官网 http://www.microsoft.com/zh-cn/download/default.aspx 在官网 ...
- Lua开发环境搭建(Mac)
1.下载最新版的Lua,点击下载 2.下载完成后,解压压缩包,打开终端,cd进入Lua解压目录下 3. 在终端输入“make macosx”,编译lua 4.编译完成后,在终端输入”make test ...
- linux 定时任务计划
crond: unrecognized service 无crond解决办法 安装计划任务:yum -y install vixie-cron
- MySQL【第一篇】安装
一.简介 MySQL 是最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司.MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言.MySQL由于其体积小. ...
- C#操控条形码扫描枪
// 条码扫描器 // 窗体部分相关代码: using System; using System.Collections.Generic; using System.ComponentModel; u ...
- java Spring bean作用域
1. Singleton作用域 当一个bean的作用域为singleton, 那么Spring IoC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则 ...
- MVC中,查询以异步呈现,分页不用异步的解决方案
MVC中,查询以异步呈现,分页不用异步的解决方案 这种需求,用一个ASPX页面和一个ASCX分部视图就可以解决了,ASPX提供对ASCX的引用,ASCX显示列表信息,ASPX主页面提供查询功能 < ...