Thanks Filip Rembiałkowski, that's exactly what I want. 2011/1/6 Filip Rembiałkowski <plk.zu...@gmail.com>
> > > 2011/1/5 flying eagle <eaglein...@gmail.com> > > I want to get all the dependencies of a table, I know how to get the index >> list using sql, but I don't know how to get the list of objects who using a >> function, for example: >> >> CREATE OR REPLACE FUNCTION reverse_last_64(TEXT) RETURNS TEXT AS $$ >> SELECT >> array_to_string( >> ARRAY >> ( SELECT substring($1, s.i,1) FROM generate_series(length($1), >> greatest(length($1) - 64 + 1, 1), -1) AS s(i) ), >> ''); >> $$ LANGUAGE SQL IMMUTABLE" >> >> CREATE TABLE Test2(id BIGSERIAL PRIMARY KEY, name varchar(100)) >> CREATE INDEX idx_test2_name ON test2(reverse_last_64(name) >> varchar_pattern_ops) >> >> drop function reverse_last_64(TEXT) ; >> >> will show >> ERROR: cannot drop function reverse_last_64(text) because other objects >> depend on it >> DETAIL: index idx_test2_name depends on function reverse_last_64(text) >> HINT: Use DROP ... CASCADE to drop the dependent objects too. >> >> what I want to get is the list of index(or maybe other function) which >> using the function using sql. >> >> > > I hope this will help you: > > select * from pg_depend where refobjid = (select oid from pg_proc where > proname='reverse_last_64'); > > http://www.postgresql.org/docs/9.0/interactive/catalog-pg-depend.html > > > greets, > Filip > > -- Xu Wei Email: eaglein...@gmail.com MSN : efi...@hotmail.com Skype: eagleinfly