当前位置: 首页 > 图文教程 > 网络编程 > PHP > php3的ODBC函数

PHP
PhpMyAdmin中无法导入sql文件的解决办法
PHP5.3.1 不再支持ISAPI
基于Windows下Apache PHP5.3.1安装教程
PHP 编程安全性小结
php正则判断中文字符
获取远程文件大小的php函数
PHP has encountered an Access Violation 错误的解决方法
PHP教程:COOKIE与SESSION联合实现跨域
PHP代码实例:图片转成HTML
PHP教程:PHP不能读取MS SQL数据表
Web开发帮助:学习http headers的方方面
cURL库的强大功能和灵活的扩展性
PHP教程:PHP的目录操作和文件操作
Fedora 12服务器上安装Apache2+PHP+MySQL
PHP开发网站常用的21种功能的代码汇总
php的curl获取有301/302跳转文件出错问题解决
难道研究PHP的人都是傻瓜吗?
WEB开发非常有用的9个PHP类库
PHP代码实例:常用的PHP分页类
PHP教程:foreach使用引用注意的问题

PHP 中的 php3的ODBC函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 289 ::
收藏到网摘: n/a

       刘国斌·转自CPCW
  
  现在我们将PHP3中常用的ODBC函数列举一下:
  
  odbc_connect (dns,user ,pass);
  返回一个连接号,如果连接失败则返回0。
  
  odbc_pconnect (dns,user,pass);
  特殊连接,脚本运行结束后,连接并不断开。第二次连接相同的dns时快一些。
  
  odbc_commit (连接号);
  中断该连接正在执行的线程,成功返回True,失败返回False。
  
  odbc_autocommit (连接号,0/1);
  当参数为1时,设置该连接正在执行的所有线程为自动中断。
  
  odbc_do/odbc_exec (连接号,sql语句);
  执行sql语句,返回一个结果号,如果操作失败则返回false。
  
  odbc_prepare (连接号,sql语句);
  返回一个结果号,但不执行sql语句。可以以后用odbc_execute(该结果号)来执行。
  
  odbc_fetch_into (结果号,[记录数,] 数组);
  把结果的某条记录(省略为下一条记录),放入数组(从[0]开始),不论数组的类型。
  返回该记录在结果中的位置,如操作失败则返回false。
  
  odbc_fetch_row (结果号,[记录数]);
  移到某条记录(省略为下一条记录),该记录可被odbc_result读写。
  
  odbc_num_fields (结果号);
  返回字段总数。
  
  odbc_num_rows (结果号);
  返回记录总数。
  
  odbc_result (结果号,字段号/字段名);
  返回结果中当前记录中该字段号/字段名的字段。
  
  odbc_result_all (结果号,sql语句);
  返回所有查询结果,并以html表格输出。
  
  odbc_field_name/odbc_field_type/odbc_field_len (结果号,字段号);
  返回该字段的字段名/数据类型/数据长度。
  
  odbc_lonreaglen (结果号,长度);
  设置返回结果的字段长度,如长度为0则全部返回。
  
  odbc_free_result (结果号);
  释放内存,当不需要内存中的查询结果时。
  
  odbc_cursor (结果号);
  返回一个指针,指向该结果。
  
  odbc_rollback
  odbc_close (连接号);
  关闭该连接。
  
  odbc_close_all();
  关闭所有连接。
  
  
  
  一个用PHP3来操纵ODBC数据库的具体例子。
  
  db为odbc的dsn名,tab1为表名
  
  
  
  echo "ODBC Samples"."
  ";
  $Connection_ID=odbc_connect("db","","");
  $Result_ID=odbc_exec($Connection_ID,"Select * from tab1");
  $i=1;
  $fldCount=odbc_num_fields($Result_ID);
  echo "";
  while (odbc_fetch_row($Result_ID,$i)<>0)
  {
   echo " ";
   for ($j=1;$j<=$fldCount;$j++)
   {
    echo " ".$i." ";
    echo " ".odbc_result($Result_ID,$j)." ";
   }
   echo "
  ";
   $i=$i+1;
  }
  echo " ";
  ?>
  
  
  
  
  其实查询过程还可以简化为:
  $Connection_ID=odbc_connect("db","","");
  $Result_ID=odbc_exec($Connection_ID,"Select * from tab1");
  $fldCount=odbc_num_fields($Result_ID);
  odbc_result_all($Result_ID);
  ?>