【问题标题】:Laravel eloquent query to PostgreSQL DB for Yahoo FinanceLaravel 雄辩地查询 PostgreSQL DB for Yahoo Finance
【发布时间】:2017-05-30 08:47:34
【问题描述】:

在我的应用中,我使用 torann/currency 来获取 Yahoo Finance 汇率。当使用他们的官方documentation 添加和更新货币时,在使用 MySQL 的本地开发 ENV 中完美运行。 应用部署到 Heroku,数据库环境是 PostgreSQL。因此,当我尝试使用 php artisan currency:manage add USD 时,出现以下错误:invalid input syntax for integer

该表的数据库架构是:

Schema::create($this->table_name, function ($table) {
            $table->increments('id')->unsigned();
            $table->string('name');
            $table->string('code', 10)->index();
            $table->string('symbol', 25);
            $table->string('format', 50);
            $table->string('exchange_rate');
            $table->boolean('active')->default(false);
            $table->timestamps();
        });

我尝试了我能想到的一切;尝试更改架构中的所有类型,尝试更改蓝图等。但要么我得到一些不同类型的错误,要么我回到了我开始的地方。猜测我缺乏 postgres 知识是主要问题,最终我会学习它,尽管我希望有人会知道我的问题的答案。

【问题讨论】:

    标签: postgresql laravel heroku yahoo-finance heroku-postgres


    【解决方案1】:

    这是包的数据库驱动程序中的bug,它假定非严格的 SQL 行为。

    【讨论】:

    • 听从了您的建议,但未能解决问题。不过,非常感谢您的帮助^_^
    • 你到底做了什么?您的屏幕截图中的错误具体是由于该命令试图将'' 插入到一个不是有效整数值的整数列中。
    • 我从 $params 中删除了 'id' 列。也许我误解了我必须改变什么?
    • 除了您不应该更改/vendor 目录中的代码这一事实之外,该更改应该可以修复屏幕截图中的错误。你现在又遇到错误了吗?
    • 我知道我不应该改变它,做了一些备份以防万一:D 不,同样的错误。这个错误似乎只发生在 postgres 上。 MySQL 和 Oracle12c 运行良好。在我自己写整个该死的东西之前,我会再尝试一些东西(或者至少尝试写它)——我选择了 torann,因为它为我节省了至少 10 个小时的工作时间。
    猜你喜欢
    • 2017-11-11
    • 2018-01-26
    • 2021-07-23
    • 2021-07-03
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多