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

PostgreSQL sloupec 'foo' neexistuje

Omylem jste vytvořili název sloupce s mezerou na konci a pravděpodobně phpPGadmin vytvořil název sloupce s dvojitými uvozovkami:

create table your_table (
    "foo " -- ...
)

To by vám dalo sloupec, který vypadal, jako by se jmenoval foo všude, ale museli byste jej uvozovat dvakrát a zahrnout mezeru, kdykoli jej použijete:

select ... from your_table where "foo " is not null

Nejlepším postupem je používat v PostgreSQL názvy sloupců neuvedené malými písmeny. Někde by mělo být nastavení v phpPGadmin, které mu řekne, aby neuváděl identifikátory (jako jsou názvy tabulek a sloupců), ale bohužel, já phpPGadmin nepoužívám, takže nevím, kde toto nastavení je (nebo i když existuje).



  1. Sledování automatických aktualizací statistik

  2. Jak se připojit k databázi Oracle 11 z . síť

  3. Jak Cot() funguje v PostgreSQL

  4. OPENROWSET nepřijímá proměnné pro své argumenty (SQL Server)