sql >> Database >  >> RDS >> PostgreSQL

Kon de conversiefunctie van onbekend naar tekst niet vinden

Postgres is tevreden als het typen niet-getypeerde constanten uit de context kan detecteren. Maar wanneer geen enkele context mogelijk is, en wanneer een query iets ingewikkelder dan triviaal is, dan faalt dit mechanisme. Deze regels zijn specifiek voor elke SELECT-clausule en sommige zijn strenger, andere niet. Als ik kan zeggen dat oudere routines toleranter zijn (vanwege hogere compatibiliteit met Oracle en minder negatieve impact op beginners), zijn moderne minder tolerant (vanwege hogere veiligheid voor typefouten).

Er waren enkele voorstellen die probeerden te werken met een onbekende letterlijke constante zoals tekstconstante, maar deze werden om meer redenen afgewezen. Ik verwacht dus geen grote veranderingen op dit gebied. Dit probleem heeft meestal te maken met synthetische tests - en minder met echte zoekopdrachten, waarbij typen worden afgeleid uit kolomtypen.




  1. Waarom kan NULL in SQL niet overeenkomen met NULL?

  2. Kan ik de naam krijgen van alle tabellen van de SQL Server-database in de C#-toepassing?

  3. Overschakelen/terugschakelen in Slony-I tijdens het upgraden van PostgreSQL-hoofdversies 8.4.x/9.3.x

  4. Kan iemand uitleggen wat de MERGE-instructie echt doet in Oracle?