oracle资料库函式库
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-05-25
<? class DB_Sql { var $Debug = false; var $Home = "/u01/app/oracle/product/8.0.4"; var $Remote = 1; /* This Query will be sent directly after the first connection Example: var $ConnectQuery="ALTER SESSION SET nls_date_language=german nls_date_format=''DD.MM.RRRR''"; -> Set the date format for this session, this is fine when your ora-role cannot be altered */ var $ConnectQuery=''''; /* Due to a strange error with Oracle 8.0.5, Apache and PHP3.0.6 you don''t need to set the ENV - on my system Apache will change to a zombie, if I don''t set this to FALSE! Instead I set these ENV-vars before the startup of apache. If unsure try it out, if it works. */ var $OraPutEnv = true; var $Database = ""; var $User = ""; var $Password = ""; var $Link_ID = 0; var $Query_ID = 0; var $Record = array(); var $Row; var $Errno = 0; var $Error = ""; var $ora_no_next_fetch=false; /* copied from db_mysql for completeness */ /* public: identification constant. never change this. */ var $type = "oracle"; var $revision = "Revision: 1.3"; var $Halt_On_Error = "yes"; ## "yes" (halt with message), "no" (ignore errors quietly), "report" (ignore errror, but spit a warning) /* public: constructor */ function DB_Sql($query = "") { $this->query($query); } /* public: some trivial reporting */ function link_id() { return $this->Link_ID; } function query_id() { return $this->Query_ID; } function connect() { ## see above why we do this if ($this->OraPutEnv) { PutEnv("ORACLE_SID=$this->Database"); PutEnv("ORACLE_HOME=$this->Home"); } if ( 0 == $this->Link_ID ) { if($this->Debug) { printf("<br>Connect()ing to $this->Database...<br>n"); } if($this->Remote) { if($this->Debug) { printf("<br>connect() $this->User/******@$this->Database<br>n"); } $this->Link_ID=ora_plogon ("$this->User/$this->Password@$this->Database",""); /************** (comment by SSilk) this dosn''t work on my system: $this->Link_ID=ora_plogon ("$this->User@$this->Database.world","$this->Password"); ***************/ } else { if($this->Debug) { printf("<br>connect() $this->User, $this->Password <br>n"); } $this->Link_ID=ora_plogon("$this->User","$this->Password"); /* (comment by SSilk: don''t know how this could work, but I leave this untouched!) */ } if($this->Debug) { printf("<br>connect() Link_ID: $this->Link_ID<br>n"); } if (!$this->Link_ID) { $this->halt("connect() Link-ID == false " . "($this->Link_ID), ora_plogon failed"); } else { //echo "commit on<p>"; ora_commiton($this->Link |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于oracle资料库函式库的所有评论