发新话题
打印

ci支持access数据库吗?

ci支持access数据库吗?

ci支持access数据库吗?
$dsn="   Provider=Microsoft.Jet.OLEDB.4.0;Data Source=xxx.mdb;  Persist Security Info=False";
象这种的

[ 本帖最后由 yakczh 于 2008-5-14 08:44 编辑 ]

TOP

不直接支持,需要 ODBC。
QQ: 49489680
MSN: zhaochang_tj AT hotmail DOT com

TOP

我折腾了一下
大体上可以用
楼主需要跟我联系
本人网站就是ci+access
图便宜买不起支持mysql的

TOP

基本上我是全部copy database/drivers下的odbc到access
但稍微做了一点改变access_driver.php中
配置了链接,不过是hard code进去的
晚上回家把整个database文件传上来,需要的对比下源码,具体改了啥忘记了
反正当时debug了整整两天才搞定
复制内容到剪贴板
PHP 代码:

class CI_DB_access_driver extends CI_DB {

        /**
         * The syntax to count rows is slightly different across different
         * database engines, so this string appears in each driver and is
         * used for the count_all() and count_all_results() functions.
         */

        var $_count_string = "SELECT COUNT(*) AS ";
        var $_random_keyword;
       
        var $_insert_id;


        function CI_DB_access_driver()
        {
                //FIXME 不知道access随机数
                $this->_random_keyword = ' RND('.time().')'; // database specific random keyword
        }

        /**
         * Non-persistent database connection
         *
         * @access        private called by the base class
         * @return        resource
         */
       
        function db_connect()
        {
                $mdbPath = "php.mdb";
                $dao = new COM("ADODB.Connection");
                $dsn="DRIVER={Microsoft Access Driver (*.mdb)};DBQ=".realpath($mdbPath);
                $dao->open($dsn);
                #echo "<br >------ accesssaccessaccess dao created -----<br>";
                #$rs = new COM("ADODB.RecordSet");
                #$rs->Open("select * from name",$dao,1,1);
                #while(! $rs->eof) {
                #$f = $rs->Fields("name");  
                #$f = $rs->Fields(0);  
                #echo $f->value.'<br>';    
                #$rs->MoveNext();
                #}
                #echo $dao;
                return $dao;
                #return @access_connect($this->hostname, $this->username, $this->password);
        }
       
        // --------------------------------------------------------------------

        /**
         * Persistent database connection
         *
         * @access        private called by the base class
         * @return        resource
         */
       
        function db_pconnect()
        {
                return db_connect();
                #return @access_pconnect($this->hostname, $this->username, $this->password);
        }
//omit....
}
 
本帖最近评分记录
  • Hex 威望 +5 原创内容 2008-5-22 21:18

TOP

access dirver for ci

改了一些代码,很多都是hard code进去的
附件: 您所在的用户组无法下载或查看附件

TOP

好,支持,最好也能出个Kohana的,我需要。

TOP

小试了一下,不支持查询的 ,没有返回结果。楼主搞定之后再回一声。

TOP

发新话题