Chcę utworzyć "przygotowaną instrukcję" w postgresie przy użyciu modułu node-postgres. Chcę go utworzyć bez wiązania go z parametrami, ponieważ powiązanie odbędzie się w pętli.node-postgres: jak przygotować instrukcję bez wykonywania zapytania?
W documentation czytam:
query(object config, optional function callback) : Query
If _text_ and _name_ are provided within the config, the query will result in the creation of a prepared statement.
Próbowałem
client.query({"name":"mystatement", "text":"select id from mytable where id=$1"});
ale gdy próbuję przechodzącą tylko klucze tekstowe Nazwa & w obiekcie konfiguracyjnym, otrzymuję wyjątek:
(przetłumaczony) komunikat jest wiążący 0 parametrów, ale przygotowana instrukcja oczekuje 1
Czy jest coś, czego mi brakuje? Jak utworzyć/przygotować wyciąg bez wiązania go z określoną wartością, aby uniknąć ponownego przygotowania instrukcji na każdym etapie pętli?
Problem z tego rozwiązania jest to, że przygotowana instrukcja zostanie wykonana z wartościami „Cokolwiek” użytych w czasie tworzenia. Czuję również akward, aby użyć pierwszej iteracji pętli do stworzenia –
Tak właśnie zaprojektowano API, przynajmniej to jest to, co otrzymałem od czytania dokumentów i korzystania z nich w jednym z moich własnych projektów.Interfejs API oczekuje, że utworzysz obiekt zapytania, gdy będziesz go potrzebować, a następnie zdecyduje, czy musi przygotować instrukcję, czy też nie, zależnie od tego, czy wie o tym, co już wstawiłeś w "tekście". –