If you want use ST_Contains() You should use
SELECT ap.ac_name
FROM andrapradesh ap
WHERE ST_Contains(ap.SHAPE, PointFromText('POINT(16.504181 78.161779)');
ST_Contains(g1, g2)
Returns 1 or 0 to indicate whether g1 completely contains g2. This
tests the opposite relationship as ST_Within().
If you want use the contained element as first param you need ST_Within
SELECT ap.ac_name
FROM andrapradesh ap
WHERE ST_Within(PointFromText('POINT(16.504181 78.161779)'),ap.SHAPE);
ST_Within(g1, g2)
Returns 1 or 0 to indicate whether g1 is spatially within g2. This
tests the opposite relationship as ST_Contains().