2016-09-26 19 views
2

Oracle 12cと連携してCodeigniter 3を使用し、散布的にQuery Builderクラスを使用します。Codeigniter 3 Oracle Query Builderの大文字と小文字の区別なし

クエリビルダは、エスケープされたテーブル名でOracleから選択しています。私はこれをしないようにクラスを構成したいと思います。生成されたSQLで

select * from customers; 

select * from 'customers'; 

から行くために

$query = $this->db->get('customers'); 

:私はこの呼び出しをしたいと思います。

私が知らない設定項目がありますか、または私の同僚の質問のうちの1つを3週間ごとに修正する必要がありますか?

+1

odbcデータベースドライバを使用していますか? – MackieeE

+0

私はOci8ドライバを使用しています。 – khhaaannnnn

+1

構文 '$ this-> db-> select( 'SELECT * FROM customers'、false) - > get();'を使用します。 'false'の' select'メソッドの2番目のパラメータは、CIのエスケープフィールドとテーブル名を防ぎます。 [Docs](https://www.codeigniter.com/userguide3/database/query_builder.html#selecting-data)。 – Tpojka

答えて

1

あなたはselect($tablename, $escape=NULL)メソッドの2番目のパラメータはFALSEに設定するとエスケープテーブル名やフィールド名を防ぐことができますので、次の構文に

$this->db->select('SELECT * FROM customers', false)->get(); 

を使用する必要があります。

関連する問題