How can I test if a column exists in a table using an SQL statement

CSharpened picture CSharpened · Apr 3, 2012 · Viewed 84k times · Source

Is there a simple alternative in PostgreSQL to this statement produced in Oracle?

select table_name from user_tab_columns
where table_name = myTable and column_name = myColumn;

I am then testing whether the query returns anything so as to prove the column exists.

I am aware that using psql I can find these out individually but this is required to produce a result in a program I am writing to validate that a requested attribute field exists in my database table.

Answer

Ramandeep Singh picture Ramandeep Singh · Apr 3, 2012

Try this :

SELECT column_name 
FROM information_schema.columns 
WHERE table_name='your_table' and column_name='your_column';