5

Codeigniter のデータベース ドライバーとして oci8 を使用しています。ストアド プロシージャを呼び出す次のコードを使用すると、エラーが発生します。

$this->db->call_function('update_letter_body', $body_letter, $insert_id);

Error : This feature is not available for the database you are using.

これを機能させるにはどうすればよいですか?

4000 文字を超える値を設定しようとしていますが、これは直接クエリからは機能しないようで、codeigniter が Oracle の関数の呼び出しをサポートしていないようです。助言がありますか ?

4

1 に答える 1

7

うーん、試してみてください

$this->db->query("CALL update_letter_body(".$body_letter.",".$insert_id.")");

call_function 作成したプロシージャを呼び出すためではなく、CodeIgniter にネイティブに含まれていない PHP データベース関数を呼び出すことができます。

ドキュメントを確認する

https://www.codeigniter.com/user_guide/database/call_function.html

于 2012-12-19T06:48:11.940 に答える