1.CI一般默认是连接mysql,但是有时候因为需要不得不连接sqlserver
需要准备php的扩展,php_pdo的odbc扩展。
config目录中的database.php配置信息
-
$active_group = 'default';
-
$active_record = TRUE;
-
-
$db['default']['hostname'] = 'odbc:Driver={SQL Server};Server=localhost';
-
$db['default']['username'] = 'sa';
-
$db['default']['password'] = 'root';
-
$db['default']['database'] = 'NewsCenter'; //我的数据库名
-
$db['default']['dbdriver'] = 'pdo'; //扩展名
-
$db['default']['dbprefix'] = '';
-
$db['default']['pconnect'] = TRUE;
-
$db['default']['db_debug'] = TRUE;
-
$db['default']['cache_on'] = FALSE;
-
$db['default']['cachedir'] = '';
-
$db['default']['char_set'] = 'utf8';
-
$db['default']['dbcollat'] = 'utf8_general_ci';
-
$db['default']['swap_pre'] = '';
-
$db['default']['autoinit'] = TRUE;
-
$db['default']['stricton'] = FALSE;
2.详见可参看system/database/drivers/pdo目录下的pdo_driver.php文件
3.连接sqlserver之后,由于sqlserver是gbk编码,而我的文件是用utf8编码,在插入数据时,返回的结果是true,但是查询数据库,数据却没有插进入。最后我通过对sql主句进行转编码,插入数据成功。
-
//$result=$this->db->_execute(iconv("UTF-8", "GBK", $psql));
-
$result=$this->db->query(iconv("UTF-8", "GBK", $psql)); //执行sql语句
阅读(3044) | 评论(0) | 转发(0) |