SQL: how to find if a table exists?
От | Lee Kindness |
---|---|
Тема | SQL: how to find if a table exists? |
Дата | |
Msg-id | 15740.45874.945784.646631@kelvin.csl.co.uk обсуждение исходный текст |
Ответ на | SQL: how to find if a table exists? (Jean-Christian Imbeault <totsubo2001@netscape.net>) |
Список | pgsql-general |
Look into the pg_class system table for a matching 'relame', the code below can be installed as a plpgsql function to add a 'table_exists()' function which returns boolean: CREATE OR REPLACE FUNCTION table_exists(NAME) RETURNS BOOLEAN AS ' DECLARE tab ALIAS FOR $1; rec RECORD; BEGIN SELECT INTO rec * FROM pg_class c WHERE c.relname = tab; IF NOT FOUND THEN RETURN false; ELSE RETURN true; END IF; END; ' LANGUAGE 'plpgsql'; This actually matches index names too, but works for my uses... This system table is documented at: http://www.postgresql.org/idocs/index.php?catalog-pg-class.html Lee. Jean-Christian Imbeault writes: > I need to programmatically create a table if it does not already exists. > > Is there an SQL statement that will allow me to query a DB to see if a > table exists?
В списке pgsql-general по дате отправления: