it-swarm.asia

كيف أسرد جميع المخططات في PostgreSQL؟

عند استخدام PostgreSQL v9.1 ، كيف أقوم بإدراج جميع المخططات باستخدام SQL؟

كنت أتوقع شيئًا على غرار:

SELECT something FROM pg_blah;
267
Stéphane

لإدراج جميع المخططات ، استخدم معيار (ANSI) INFORMATION_SCHEMA

select schema_name
from information_schema.schemata;

مزيد من التفاصيل في يدوي

بدلا من ذلك:

select nspname
from pg_catalog.pg_namespace;

مزيد من التفاصيل حول pg_catalog في يدوي

280
a_horse_with_no_name

عند استخدام سطر الأوامر psql ، يمكنك إدراج كل المخطط باستخدام الأمر \dn.

274
eppesuig

اتصل بالأمر psql -> psql --u {userName} {DBName} ، ثم يمكنك كتابة الأمر أدناه للتحقق من عدد المخططات الموجودة في قاعدة البيانات

DBName=# \dn

غير ذلك يمكنك التحقق من بناء الجملة من خلال الخطوات التالية بسهولة-

  1. بعد توصيل DB ، اضغط

    DBName=# help
    

ستحصل على الخيارات أدناه:

إنك تستخدم psql ، واجهة سطر الأوامر لـ PostgreSQL.
النوع:\حقوق النشر لشروط التوزيع
\h للمساعدة في أوامر SQL
\؟ للمساعدة في أوامر psql
\g أو إنهاء بفاصلة منقوطة لتنفيذ الاستعلام
\q للإنهاء

ثم اضغط

DBName=# \?

ستحصل على جميع الخيارات بسهولة بالغة.

40
Bhabatosh Bera

تبدأ في postgres 9.3 ، خدعة واحدة يمكنك استخدامها في postgres للحصول على sql الدقيق للأمر المعلوماتي (مثل\d ،\du ،\dp ، إلخ) في psql هي باستخدام معاملة. إليك كيف تسير الحيلة. افتح جلسة postgres واحدة ، ثم اكتب الأمر:

begin;
\dn+

أثناء استمرار تشغيل المعاملة ، افتح جلسة postgres أخرى ، واستفسر عن pg_stat_activity ويمكنك الحصول على sql بالضبط.

postgres=# select query from pg_stat_activity ;
                                 query                                 
-----------------------------------------------------------------------
 SELECT n.nspname AS "Name",                                          +
   pg_catalog.pg_get_userbyid(n.nspowner) AS "Owner",                 +
   pg_catalog.array_to_string(n.nspacl, E'\n') AS "Access privileges",+
   pg_catalog.obj_description(n.oid, 'pg_namespace') AS "Description" +
 FROM pg_catalog.pg_namespace n                                       +
 WHERE n.nspname !~ '^pg_' AND n.nspname <> 'information_schema'      +
 ORDER BY 1;
12
Soni Harriz