CONVERT(`codExtern`, SIGNED)codeIgniterでセレクションを注文する必要があります。私がこのようにそれを使うならば:
$this->db->order_by(" CONVERT(`codExtern`, SIGNED) ");
codeigniterは、次のようにSIGNED単語を`-sの間に置きます。
CONVERT(codExtern, `INTEGER` )
どうすればそれを機能させることができますか?
CONVERT(`codExtern`, SIGNED)codeIgniterでセレクションを注文する必要があります。私がこのようにそれを使うならば:
$this->db->order_by(" CONVERT(`codExtern`, SIGNED) ");
codeigniterは、次のようにSIGNED単語を`-sの間に置きます。
CONVERT(codExtern, `INTEGER` )
どうすればそれを機能させることができますか?
残念ながら、メソッドのようなselect()パラメータで識別子保護を無効にすることはできません。CIは、入力にCI_DB_driver :: _protect_identifiersが含まれている場合、それ,を呼び出します。
現在、メソッドを呼び出す前に「private」プロパティ$_protect_identifiersをfalseに設定すると、これを回避できます。メソッドを実行すると、これがスキップされてから元に戻ります(たとえば、問題のある列/テーブル名に役立ちます)。これはおそらくあまり良い考えではありません。将来のCIバージョンでは、このプロパティが実際になり、コードが破損する可能性があります。$this->dborder_byprivate
残念ながら、データベースライブラリを拡張することはできませんが、下のファイルを変更することを恐れない場合は、「order byrandom()」が例外を取得したのと同じようsystemに、メソッドで例外を作成できます。order_by()