0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

CodeIgniterでOracle Databaseを使う場合の正しい設定方法

Last updated at Posted at 2019-12-17

(2020-03-26) この記事は http://blog.a-way-out.net/blog/2019/12/17/codeigniter-oracle-config/ のコピーです。今後、退会によりこの記事は削除される可能性があります。

結論

今までずっと間違ってましたが、char_setAL32UTF8 が正しい。
多分、今時のほとんどのユーザーはこれでOK。

$db['default'] = array(
    'dsn'    => '',
    'hostname' => ((isset($_SERVER['DB_HOSTNAME'])) ? $_SERVER['DB_HOSTNAME'] : 'localhost'),
    'username' => ((isset($_SERVER['DB_USERNAME'])) ? $_SERVER['DB_USERNAME'] : ''),
    'password' => ((isset($_SERVER['DB_PASSWORD'])) ? $_SERVER['DB_PASSWORD'] : ''),
    'database' => '',
    'dbdriver' => 'oci8',
    'dbprefix' => '',
    'pconnect' => false,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => false,
    'cachedir' => '',
    'char_set' => 'AL32UTF8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' =>  false,
    'compress' => false,
    'stricton' => false,
    'failover' => array(),
    'save_queries' => true
);

ちなみに dbcollat は、oci8 driver は使っていないので気にしなくてOK。

もし違う文字コード使っているかもという場合は、確認してください。

SELECT
  VALUE 
FROM
  NLS_DATABASE_PARAMETERS
WHERE
  PARAMETER = 'NLS_CHARACTERSET';

クリエイティブ・コモンズ・ライセンス
この記事はCC BY-SA 4.0(クリエイティブ・コモンズ 表示 4.0 継承 国際 ライセンス)の元で公開します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?