Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php laravel查询绑定使用“”失败_Php_Mysql_Laravel_Binding - Fatal编程技术网

Php laravel查询绑定使用“”失败

Php laravel查询绑定使用“”失败,php,mysql,laravel,binding,Php,Mysql,Laravel,Binding,我有数据库和表名。 在表格艺术中,有艺术id、等级字段 我有这样的虚拟数据: art_id rank 1 1 2 2 3 3 4 4 5 5 6 11 7 11 8 11 然后当我想从排名>3的艺术中选择 因此,当我使用此代码时: DB::select('select * from art WHERE rank > ?',array(3)); 它返回许多行 但是,当我使用

我有数据库和表名。 在表格艺术中,有艺术id、等级字段 我有这样的虚拟数据:

art_id   rank
1        1
2        2
3        3
4        4
5        5
6        11
7        11
8        11
然后当我想从排名>3的艺术中选择

因此,当我使用此代码时:

DB::select('select * from art WHERE rank > ?',array(3));
它返回许多行

但是,当我使用此代码时:

DB::select('select * from art WHERE rank > 3 ');
它只返回2行

有人能解释为什么会这样吗?这是因为数组绑定失败还是什么

编辑:我在等级字段的数据类型中使用枚举。 当我在数据类型中为秩字段使用整数时,两个代码都可以正常工作


解决方案:使用integer可能对这两种代码都非常有效,但我仍然想知道为什么enum不能对第一种代码非常有效。

它们应该都是一样的。你一定是做错了什么事:/抱歉,这不是答案,我只是不能在你的问题下面发表评论。仅供参考,如果你解决了自己的问题。。把解决方案写成解决方案

似乎不太可能。它在两种代码中的工作方式应该是相同的,即使用enum作为秩字段。所以,当im更改秩字段的整数时,两个代码都可以正常工作。谢谢你的回复@Hanky웃Panky当秩显然更适合作为整数时,为什么要使用枚举?@Marwelln因为秩字段明确定义了1到11,所以我在整数旁边使用了枚举。谢谢你的回复。