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

Chyba bajtu Postgres při vazbě null na připravené příkazy

Protože jsem neobdržel žádnou zpětnou vazbu ve formě odpovědí nebo dokonce komentáře, chystal jsem se to vzdát, když jsem narazil na tento skvělý blogový příspěvek:

Jak svázat vlastní typy parametrů Hibernate s dotazy JPA

Příspěvek poskytuje dvě možnosti pro ovládání typů, které JPA předává ovladači Postgresu (nebo čemu je vlastně podkladová databáze). Použil jsem přístup pomocí TypedParameterValue . Zde je, jak můj kód vypadá, pokračující s příkladem uvedeným výše:

Query query = entityManager.createNativeQuery(sqlString, MyEntity.class);
query.setParameter("param1", new TypedParameterValue(StringType.INSTANCE, null));
query.setParameter("param2", new TypedParameterValue(DoubleType.INSTANCE, null));
List<MyEntity> = query.getResultList();

Samozřejmě je triviální předávání null pro každý parametr v dotazu, ale dělám to hlavně proto, abych ukázal syntaxi pro text a dvojité sloupce. V praxi bychom očekávali, že alespoň několik parametrů nebude null , ale výše uvedená syntaxe zpracovává všechny hodnoty, null i jiné.



  1. Ovlivňuje velikost souboru protokolu výkon databáze? Jak zmenšit soubor protokolu?

  2. Problém konfigurace EF Core s vlastněným typem používaným ve 2 různých třídách

  3. Instalace SQL Server 2017 krok za krokem -1

  4. Jak používat sekvence Oracle DB bez ztráty dalšího pořadového čísla v případě vrácení zpět