sql >> Databáze >  >> RDS >> PostgreSQL

PostgreSQL, Npgsql vrací 42601:chyba syntaxe na $1 nebo blízko

PostgreSQL vám neumožňuje vložit parametr kamkoli do dotazu. To, co chcete, můžete dosáhnout následujícím způsobem:

var command = new NpgsqlCommand("select * from Logs.Logs where Log_Date > current_date - @days", conn))
command.Parameters.AddWithValue("@days", TimeSpan.FromDays(days));

Tímto způsobem předáváte interval přímo z Npgsql do PostgreSQL, spíše než část výrazu určeného k vytvoření tohoto intervalu.



  1. Mysql – LIMIT podle procenta?

  2. Rozdělit obrovské (95Mb) pole JSON na menší části?

  3. Automatický dotaz JDBC se ukázal být velmi pomalý

  4. Odesílat geolokaci uživatele na server každou minutu