Mysql
 sql >> база данни >  >> RDS >> Mysql

Параметърът в ред по клауза не подрежда -mysql, C#

Това е така, защото ORDER BY използва идентификатор на база данни (т.е. колона, псевдоним или израз). Предавате стойността като параметър.

С други думи, получената заявка би била еквивалентна на

... ORDER BY 'StartTime' ...

Ако потвърдите въвеждането на потребителя спрямо известен набор от стойности (т.е. наличните колони), можете просто да интерполирате стойността в низа на заявката, напр. (много грубо)

$orderBy = $_GET['order_by'];
if (!in_array($orderBy, $orderableColumns)) {
    throw new Exception('Invalid "order by" specified');
}
$query = sprintf('... ORDER BY `%s` ...', $orderBy);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Въпрос за производителност:НА АКТУАЛИЗИРАНЕ НА ДУБЛИРАН КЛЮЧ срещу АКТУАЛИЗИРАНЕ (MySQL)

  2. Как мога да присвоя стойност на променлива, използвайки агрегатна функция в mysql?

  3. Как да извлечете mysql данни с помощта на многонишковост на Java

  4. Компилиране на MySQL конектор с Visual Studio 2015 Win64

  5. Mysql:Преобразувайте DB от местно време в UTC