Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Parametr w kolejności według klauzuli nie porządkuje -mysql, C#

Dzieje się tak, ponieważ ORDER BY używa identyfikatora bazy danych (tj. kolumny, aliasu lub wyrażenia). Przekazujesz wartość jako parametr.

Innymi słowy, wynikowe zapytanie byłoby równoważne

... ORDER BY 'StartTime' ...

Jeśli walidujesz dane wprowadzone przez użytkownika ze znanym zestawem wartości (tj. dostępnymi kolumnami), możesz po prostu interpolować wartość do ciągu zapytania, np. (bardzo przybliżone)

$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. Jak wyświetlić dane z mysql za pomocą angular.js PHP?

  2. Jak wykonać kopię zapasową pojedynczej tabeli w bazie danych MySQL?

  3. Praca z wyzwalaczami w bazie danych MySQL — samouczek

  4. standardowa metoda pobierania powiadomienia z bazy danych o zmianie/wstawieniu

  5. Konfigurowanie nowej instancji MySQL Co to jest bieżące hasło roota?