【问题标题】:mysql query error when have '(' but no ')'mysql查询错误时有'('但没有')'
【发布时间】:2019-01-28 11:39:56
【问题描述】:
$q = "select * from product where decription = ?";
$param = 'package ( 2 chicken wings, 3 salad';

$result = DB::select($q, array($param));

有一个错误查询,因为参数字符串没有')'.. 如果字符串中有'('但没有')',如何防止查询?

错误消息:语法错误或访问冲突:1064 语法错误,意外 $end

【问题讨论】:

  • 您面临哪种错误?尝试查找错误消息
  • 错误信息:语法错误或访问冲突:1064 语法错误,意外 $end
  • 您是否尝试过使用查询构建器,例如:DB::table('product')->where('description', $param)->get();
  • 您应该使用“\”转义字符串,即`“select from product where decrition \'?\'”`
  • 一个错误,由 ')' 导致,来自字符串 'package (2 鸡翅,3 沙拉'。

标签: mysql laravel


【解决方案1】:

看,你没有 $query.. 那将是 $q 而不是 $query

答案是$result = DB::select($q, array($param));

【讨论】:

  • 问题不是来自 $query 变量...主要错误来自 ')'.. 在我编辑字符串添加后 ).. 它工作正常.. 错误消息:语法错误或访问冲突: 1064 语法错误,意外 $end
  • 您的查询是错误的...从产品中选择什么??如果您希望所有查询都是“从产品中选择 *”
  • 你为什么使用 RAW SQL Querys.. 使用 laravel 你可以使用 eloquent
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-31
  • 1970-01-01
  • 2021-08-24
  • 2013-06-19
  • 1970-01-01
  • 2020-09-08
相关资源
最近更新 更多