开发者社区> 问答> 正文

Laravel模型,选择带有十六进制的查询

我在使用CCSID作为十六进制值的laravel中从查询返回结果时遇到问题。如果我使用有问题的标识符,并在我的sql客户端中将其手动插入查询中,它将起作用:

FROM            TableOne T1
WHERE           CAST(T1 . IDENITIFIER AS CHAR(26) CCSID 65535) = x'0213725502A3BC45706AEE6001';

但是,当我在以标识符作为参数的laravel模型中尝试此操作时,它会出错并显示x:identifier而不是x,然后显示字符串:

    FROM            TableOne T1
    WHERE           CAST(T1 . IDENITIFIER AS CHAR(26) CCSID 65535) = x':identifier'
";

    try {
        return DB::connection('odbc')->select($sql, [
            'identifier' => $identifier
        ]);
    } catch (Exception $e) {
        return false;
    }

如何使该参数与x一起正确注入,使其像手动操作一样工作?

展开
收起
社区秘书 2019-12-04 13:56:21 623 0
0 条回答
写回答
取消 提交回答
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载