【问题标题】:Error : This feature is not available for the database you are using错误:此功能不适用于您正在使用的数据库
【发布时间】:2012-12-06 11:11:17
【问题描述】:

我在 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 函数。有什么建议 ?

【问题讨论】:

  • 据我所知,这些功能仅适用于 mysql 而不是 oracle
  • CI oci8 驱动程序没有更新,因为很长时间我的项目遇到了同样的问题
  • 您确定CodeIgniter 不会使用$this->db->query() 提交一个4000 字符的普通查询,或者只是您的max_post_sizemax_execution_time 设置为低?
  • @StevenFarley :是的,它没有,检查这个链接stackoverflow.com/questions/13945710/…

标签: php sql oracle codeigniter


【解决方案1】:

嗯,试试

$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

【讨论】:

    猜你喜欢
    • 2013-11-27
    • 2018-11-02
    • 1970-01-01
    • 2017-05-13
    • 2019-04-05
    • 2020-03-05
    • 2021-11-18
    • 1970-01-01
    • 2015-11-27
    相关资源
    最近更新 更多