PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

अन्य दृश्यों में प्रयुक्त कॉलम का प्रकार बदलना

मुझे लगता है कि यह वही करता है जो आप चाहते हैं, हालांकि मैंने VARIADIC शब्दार्थ के साथ संगत होने के लिए दृश्य सूची को args के अंत में स्थानांतरित कर दिया।

CREATE OR REPLACE FUNCTION recreate_views(run_me text, VARIADIC views text[])
  RETURNS void
AS  $$
DECLARE
  view_defs text[];
  i integer;
  def text;
BEGIN
  for i in array_lower(views,1) .. array_upper(views,1) loop
    select definition into def from pg_views where viewname = views[i];
    view_defs[i] := def;
    EXECUTE 'DROP VIEW ' || views[i];
  end loop;

  EXECUTE run_me;

  for i in reverse array_upper(views,1) .. array_lower(views,1) loop
    def = 'CREATE OR REPLACE VIEW ' || quote_ident( views[i] ) || ' AS ' || view_defs[i];
    EXECUTE def;
  end loop;

END
$$
LANGUAGE plpgsql;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pqxx एक कार्य लेनदेन का पुन:उपयोग / पुन:सक्रिय करें

  2. यूटीसी में दिनांक और समय - उन्हें पोस्टग्रेज में कैसे स्टोर करें?

  3. कैसे PostgreSQL का उपयोग कर तालिका नाम से स्तंभ विशेषताएँ क्वेरी प्राप्त करने के लिए?

  4. ऑटो इंक्रीमेंट टेबल कॉलम

  5. सेलेक्ट क्लॉज में एकाधिक सेट-रिटर्निंग फ़ंक्शंस के लिए अपेक्षित व्यवहार क्या है?