GoGPT Best VPN GoSearch

فاویکون OnWorks

psql - آنلاین در ابر

psql را در ارائه دهنده هاست رایگان OnWorks از طریق Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا کنید.

این دستور psql است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.

برنامه:

نام


psql - ترمینال تعاملی PostgreSQL

خلاصه


psql [انتخاب...] [dbname [نام کاربری]]

شرح


psql یک front-end مبتنی بر ترمینال برای PostgreSQL است. این امکان را به شما می دهد تا پرس و جوها را تایپ کنید
به صورت تعاملی، آنها را به PostgreSQL صادر کنید و نتایج پرس و جو را مشاهده کنید. متناوبا، ورودی
می تواند از یک فایل باشد. علاوه بر این، تعدادی متا دستورات و مختلف را ارائه می دهد
ویژگی های پوسته مانند برای تسهیل نوشتن اسکریپت ها و خودکارسازی طیف گسترده ای از وظایف.

OPTIONS


-a
---پژواک همه
تمام خطوط ورودی خالی را هنگام خواندن در خروجی استاندارد چاپ کنید. (این نیست
برای خطوطی که به صورت تعاملی خوانده می شوند اعمال شود.) این معادل تنظیم متغیر است ECHO به
همه.

-A
-- بدون تراز کردن
به حالت خروجی بدون تراز تغییر می کند. (حالت خروجی پیش فرض در غیر این صورت تراز شده است.)

-b
--پژواک-خطاها
دستورات SQL ناموفق را در خروجی خطای استاندارد چاپ کنید. این معادل تنظیم است
متغیر ECHO به اشتباهات

-c فرمان
--فرمان=فرمان
مشخص می کند که psql برای اجرای یک رشته دستور است، فرمان، و سپس خارج شوید. این هست
مفید در اسکریپت های پوسته فایل های راه اندازی (psqlrc و ~/.psqlrc) با این نادیده گرفته می شوند
گزینه.

فرمان باید یک رشته فرمان باشد که به طور کامل توسط سرور قابل تجزیه باشد
(یعنی هیچ ویژگی خاص psql ندارد)، یا یک دستور بک اسلش. بنابراین شما
نمی توان دستورات متا SQL و psql را با این گزینه ترکیب کرد. برای رسیدن به آن، شما می توانید
رشته را به psql وارد کنید، برای مثال: echo '\x \\ SELECT * FROM foo;' | psql. (\\ است
متا فرمان جداکننده.)

اگر رشته فرمان حاوی چندین دستور SQL باشد، آنها در یک واحد پردازش می شوند
معامله، مگر اینکه صریح باشد شروع/مرتکب شدن دستورات موجود در رشته به
آن را به چند تراکنش تقسیم کنید. این با رفتار زمانی متفاوت است
همان رشته به ورودی استاندارد psql تغذیه می شود. همچنین، فقط نتیجه آخرین SQL
فرمان برگردانده می شود.

به دلیل این رفتارهای قدیمی، قرار دادن بیش از یک دستور در -c رشته
اغلب نتایج غیر منتظره ای دارد. بهتر است چندین دستور را به استاندارد psql وارد کنید
ورودی، یا با استفاده از اکو همانطور که در بالا نشان داده شده است، یا از طریق یک پوسته در اینجا-سند، برای
مثال:

psql <
\x
SELECT * FROM foo.
EOF

-d dbname
--dbname=dbname
نام پایگاه داده برای اتصال را مشخص می کند. این معادل مشخص کردن است
dbname به عنوان اولین آرگومان غیر گزینه ای در خط فرمان.

اگر این پارامتر حاوی علامت = باشد یا با یک پیشوند URI معتبر شروع شود (postgresql://
یا postgres://)، به عنوان یک رفتار می شود اطلاعاتی رشته به بخش 31.1.1، "اتصال" مراجعه کنید
رشته ها» برای اطلاعات بیشتر در مستندات.

-e
--echo-queries
تمام دستورات SQL ارسال شده به سرور را نیز در خروجی استاندارد کپی کنید. این هست
معادل تنظیم متغیر است ECHO به پرس و جو

-E
--پژواک پنهان
پژواک های واقعی ایجاد شده توسط \d و سایر دستورات بک اسلش. می توانید از این استفاده کنید
برای مطالعه عملیات داخلی psql. این معادل تنظیم متغیر است
ECHO_HIDDEN روشن کردن

-f نام فایل
--file=نام فایل
از فایل استفاده کنید نام فایل به عنوان منبع دستورات به جای خواندن دستورات
به صورت تعاملی پس از پردازش فایل، psql خاتمه می یابد. این از بسیاری جهات است
معادل دستور متا \i.

If نام فایل است - (هیفن)، سپس ورودی استاندارد خوانده می شود تا زمانی که نشانه EOF یا \q
فرا فرمان البته توجه داشته باشید که Readline در این مورد استفاده نمی شود (مثلا اگر -n بود
مشخص شده است).

استفاده از این گزینه به طور ماهرانه ای با نوشتن psql متفاوت است نام فایل. به طور کلی هر دو
آنچه را که انتظار دارید انجام می دهد، اما استفاده از -f برخی از ویژگی های خوب مانند خطا را فعال می کند
پیام هایی با شماره خط همچنین احتمال کمی وجود دارد که استفاده از این گزینه انجام شود
سربار راه اندازی را کاهش دهید. از سوی دیگر، نوع با استفاده از ورودی پوسته
تغییر مسیر (در تئوری) تضمین شده است که دقیقاً همان خروجی را به دست می آورد
دریافت شده بود اگر همه چیز را با دست وارد کرده باشید.

-F جدا ساز
--field-separator=جدا ساز
استفاده کنید جدا ساز به عنوان جداکننده میدان برای خروجی بدون تراز. این معادل است \pset
فیلدسپ or \f.

-h نام میزبان
-- میزبان =نام میزبان
نام میزبان ماشینی که سرور روی آن در حال اجرا است را مشخص می کند. اگر ارزش
با یک اسلش شروع می شود، به عنوان دایرکتوری برای سوکت دامنه یونیکس استفاده می شود.

-H
--html
خروجی جدولی HTML را روشن کنید. این معادل فرمت \pset html یا the است \H
فرمان

-l
-- لیست
تمام پایگاه های داده موجود را فهرست کنید، سپس خارج شوید. سایر گزینه های غیر اتصال نادیده گرفته می شوند.
این شبیه دستور متا است \ لیست.

-L نام فایل
--log-file=نام فایل
تمام خروجی پرس و جو را در فایل بنویسید نام فایل، علاوه بر خروجی معمولی
مقصد

-n
--بدون خط خواندن
از Readline برای ویرایش خط استفاده نکنید و از تاریخچه دستورات استفاده نکنید. این میتواند باشد
برای خاموش کردن گسترش زبانه هنگام برش و چسباندن مفید است.

-o نام فایل
--خروجی=نام فایل
تمام خروجی پرس و جو را در فایل قرار دهید نام فایل. این معادل دستور است \o.

-p بندر
--پورت=بندر
پورت TCP یا پسوند فایل سوکت دامنه یونیکس محلی را مشخص می کند
سرور در حال گوش دادن به اتصالات است. پیش‌فرض مقدار the PGPORT محیط
متغیر یا، اگر تنظیم نشده باشد، به پورت مشخص شده در زمان کامپایل، معمولاً 5432.

-P واگذاری
--pset=واگذاری
گزینه های چاپ را به سبک \pset. توجه داشته باشید که در اینجا باید جدا شوید
نام و مقدار با علامت مساوی به جای فاصله. مثلا برای تنظیم خروجی
فرمت به LaTeX، می توانید -P format=latex را بنویسید.

-q
--ساکت
مشخص می کند که psql باید کار خود را بی سر و صدا انجام دهد. به طور پیش فرض، پیام های خوش آمدگویی را چاپ می کند
و خروجی های مختلف اطلاعاتی اگر از این گزینه استفاده شود، هیچ کدام از اینها اتفاق نمی افتد. این
مفید است با -c گزینه. این معادل تنظیم متغیر است ساکت روشن کردن

-R جدا ساز
--record-separator=جدا ساز
استفاده کنید جدا ساز به عنوان جداکننده رکورد برای خروجی بدون تراز. این معادل است
\pset رکورد فرمان

-s
--یک قدم
در حالت تک مرحله ای اجرا کنید. این بدان معناست که قبل از ارسال هر فرمان از کاربر خواسته می شود
به سرور، با گزینه لغو اجرا نیز. از این برای اشکال زدایی اسکریپت ها استفاده کنید.

-S
-- تک خطی
در حالت تک خطی اجرا می شود که در آن خط جدید یک دستور SQL را به عنوان نقطه ویرگول خاتمه می دهد
انجام می دهد.

توجه داشته باشید:
این حالت برای کسانی که اصرار دارند ارائه شده است، اما شما لزوماً اینگونه نیستید
تشویق به استفاده از آن به ویژه، اگر SQL و دستورات متا را در یک خط مخلوط کنید
ترتیب اجرا ممکن است همیشه برای کاربر بی تجربه واضح نباشد.

-t
--فقط دوتایی
چاپ نام ستون ها و پاورقی های شمارش ردیف نتایج و غیره را خاموش کنید
معادل \t فرمان

-T table_options
--table-attr=table_options
گزینه هایی را برای قرار دادن در تگ جدول HTML مشخص می کند. دیدن \pset برای جزئیات بیشتر.

-U نام کاربری
-- نام کاربری =نام کاربری
به عنوان کاربر به پایگاه داده متصل شوید نام کاربری به جای پیش فرض (باید داشته باشید
البته اجازه انجام این کار.)

-v واگذاری
--set=واگذاری
--variable=واگذاری
انجام یک انتساب متغیر، مانند \تنظیم فرا فرمان توجه داشته باشید که باید جدا شوید
نام و مقدار، در صورت وجود، با علامت مساوی در خط فرمان. برای تنظیم یک متغیر،
علامت مساوی را کنار بگذارید برای تنظیم یک متغیر با مقدار خالی، از علامت مساوی استفاده کنید
اما ارزش را کنار بگذارید این تکالیف در مراحل بسیار اولیه انجام می شود
راه اندازی، بنابراین متغیرهای رزرو شده برای اهداف داخلی ممکن است بعداً بازنویسی شوند.

-V
- نسخه
نسخه psql را پرینت بگیرید و خارج شوید.

-w
--بدون رمز عبور
هرگز درخواست رمز عبور صادر نکنید. اگر سرور به احراز هویت رمز عبور نیاز دارد و الف
رمز عبور با ابزارهای دیگری مانند فایل .pgpass، اتصال در دسترس نیست
تلاش شکست خواهد خورد این گزینه می تواند در کارهای دسته ای و اسکریپت هایی که هیچ کاربری ندارند مفید باشد
برای وارد کردن رمز عبور وجود دارد.

توجه داشته باشید که این گزینه برای کل جلسه تنظیم شده باقی می ماند و بنابراین بر استفاده ها تأثیر می گذارد
از فرا فرمان \ اتصال و همچنین تلاش اولیه برای اتصال.

-W
--کلمه عبور
قبل از اتصال به پایگاه داده، psql را مجبور به درخواست رمز عبور کنید.

این گزینه هرگز ضروری نیست، زیرا psql به طور خودکار یک رمز عبور را درخواست می کند
سرور نیاز به احراز هویت رمز عبور دارد. با این حال، psql یک اتصال را هدر می دهد
سعی کنید بفهمید که سرور رمز عبور می خواهد. در برخی موارد ارزش تایپ کردن را دارد
-W برای جلوگیری از تلاش اضافی برای اتصال

توجه داشته باشید که این گزینه برای کل جلسه تنظیم شده باقی می ماند و بنابراین بر استفاده ها تأثیر می گذارد
از فرا فرمان \ اتصال و همچنین تلاش اولیه برای اتصال.

-x
--منبسط
حالت قالب بندی جدول گسترش یافته را روشن کنید. این معادل است \x فرمان

-ایکس،
--no-psqlrc
فایل راه اندازی را نخوانید (نه فایل psqlrc سراسر سیستم و نه کاربر
~/.psqlrc فایل).

-z
--فیلد-جداکننده-صفر
جداکننده فیلد برای خروجی بدون تراز را روی صفر بایت تنظیم کنید.

-0
-- رکورد - جداکننده - صفر
جداکننده رکورد برای خروجی بدون تراز را روی صفر بایت تنظیم کنید. این مفید است برای
به عنوان مثال، با xargs -0 ارتباط برقرار می کند.

-1
-- تک معامله
هنگامی که psql یک اسکریپت را اجرا می کند، افزودن این گزینه wraps می شود شروع/مرتکب شدن اطراف فیلمنامه
تا آن را به صورت یک تراکنش واحد اجرا کنیم. این تضمین می کند که یا تمام دستورات
با موفقیت کامل شد، یا هیچ تغییری اعمال نشد.

اگر خود اسکریپت استفاده کند شروع, مرتکب شدن، یا بازگشت، این گزینه را نخواهد داشت
اثرات مورد نظر همچنین اگر اسکریپت حاوی دستوراتی باشد که قابل اجرا نباشد
در داخل یک بلوک تراکنش، مشخص کردن این گزینه باعث آن فرمان می شود (و از این رو
کل معامله) شکست بخورد.

-?
--کمک[=موضوع]
نمایش راهنمایی در مورد psql و خروج. اختیاری موضوع پارامتر (پیش‌فرض گزینه‌ها)
انتخاب می کند که کدام قسمت از psql توضیح داده شود: دستورات دستورات بک اسلش psql را توصیف می کند.
گزینه گزینه های خط فرمان را که می توان به psql ارسال کرد را توصیف می کند. و متغیرها
راهنمایی در مورد متغیرهای پیکربندی psql نشان می دهد.

خروج وضعیت


psql اگر به طور معمول تمام شود، 0 را به پوسته برمی‌گرداند، اگر خطای مرگبار خودش رخ دهد، 1 را به پوسته برمی‌گرداند.
(مثلاً حافظه خالی، فایل یافت نشد)، 2 اگر اتصال به سرور خراب شد و
جلسه تعاملی نبود و 3 اگر خطایی در یک اسکریپت و متغیر رخ دهد
ON_ERROR_STOP تنظیم شد.

طریقه استفاده


اتصال به a پایگاه داده
psql یک برنامه مشتری معمولی PostgreSQL است. به منظور اتصال به پایگاه داده شما
باید نام پایگاه داده هدف خود، نام میزبان و شماره پورت را بدانید
سرور و نام کاربری که می خواهید به آن متصل شوید. psql را می توان در مورد آن ها گفت
پارامترها از طریق گزینه های خط فرمان، یعنی -d, -h, -pو -U به ترتیب. اگر یک
آرگومانی پیدا می شود که به هیچ گزینه ای تعلق ندارد و به عنوان the تعبیر می شود
نام پایگاه داده (یا نام کاربری، اگر نام پایگاه داده قبلاً داده شده باشد). نه همه اینها
گزینه ها مورد نیاز است؛ پیش فرض های مفیدی وجود دارد. اگر نام میزبان را حذف کنید، psql این کار را انجام می دهد
از طریق سوکت دامنه یونیکس به سروری در میزبان محلی یا از طریق TCP/IP به لوکال هاست متصل شوید.
در ماشین هایی که سوکت های دامنه یونیکس ندارند. شماره پورت پیش فرض در تعیین می شود
زمان کامپایل از آنجایی که سرور پایگاه داده از همان پیش فرض استفاده می کند، مجبور نخواهید بود
در بیشتر موارد پورت را مشخص کنید. نام کاربری پیش فرض، نام کاربری سیستم عامل شما است،
همانطور که نام پایگاه داده پیش فرض است. توجه داشته باشید که نمی توانید فقط به هیچ پایگاه داده ای در زیر متصل شوید
هر نام کاربری مدیر پایگاه داده شما باید در مورد دسترسی شما به شما اطلاع داده باشد
حقوق.

وقتی پیش‌فرض‌ها کاملاً درست نیستند، می‌توانید با تنظیم کردن مقداری از تایپ کردن خود را ذخیره کنید
متغیرهای محیطی PGDATABASE, PGHOST, PGPORT و / یا PGUSER به مقادیر مناسب (برای
متغیرهای محیطی اضافی، بخش 31.14، "متغیرهای محیطی" را ببینید.
اسناد.) همچنین راحت است که یک ~/.pgpass فایل برای جلوگیری از داشتن منظم
برای تایپ رمزهای عبور بخش 31.15، "فایل رمز عبور" را در مستندات مربوطه ببینید
اطلاعات بیشتر.

یک راه جایگزین برای تعیین پارامترهای اتصال در الف است اطلاعاتی رشته یا یک URI،
که به جای نام پایگاه داده استفاده می شود. این مکانیسم به شما کنترل بسیار گسترده ای می دهد
اتصال. مثلا:

$ psql "سرویس=سرویس من sslmode=نیاز"
$ psql postgresql://dbmaster:5433/mydb?sslmode=require

به این ترتیب شما همچنین می توانید از LDAP برای جستجوی پارامترهای اتصال همانطور که در بخش توضیح داده شده است استفاده کنید
31.17، "LDAP جستجوی پارامترهای اتصال"، در مستندات. به بخش 31.1.2 مراجعه کنید،
"کلمات کلیدی پارامتر"، در اسناد برای اطلاعات بیشتر در مورد همه موارد موجود
گزینه های اتصال

اگر اتصال به هر دلیلی امکان پذیر نبود (مثلاً، امتیازات ناکافی، سرور
روی هاست مورد نظر اجرا نمی شود، psql یک خطا را برمی گرداند و خاتمه می یابد.

اگر ورودی استاندارد و خروجی استاندارد یک ترمینال باشند، psql کلاینت را تنظیم می کند
رمزگذاری به "خودکار"، که رمزگذاری مشتری مناسب را از منطقه شناسایی می کند
تنظیمات (LC_CTYPE متغیر محیطی در سیستم های یونیکس). اگر این کار نمی کند به عنوان
انتظار می رود، رمزگذاری مشتری می تواند با استفاده از متغیر محیطی لغو شود
PGCLIENTENCODING.

ورود SQL دستورات
در عملکرد عادی، psql یک فرمان با نام پایگاه داده ای که psql در آن قرار دارد ارائه می دهد
در حال حاضر متصل است، به دنبال آن رشته =>. مثلا:

$ psql testdb
psql (9.5.2)
برای کمک عبارت "help" را تایپ کنید.

testdb=>

در اعلان، کاربر می تواند دستورات SQL را تایپ کند. به طور معمول، خطوط ورودی به
سرور زمانی که به نقطه ویرگول پایان دهنده فرمان رسید. پایان خط پایان نمی یابد
یک دستور بنابراین دستورات را می توان در چندین خط برای وضوح پخش کرد. اگر دستور بود
ارسال و بدون خطا اجرا می شود، نتایج دستور بر روی صفحه نمایش داده می شود.

هر زمان که دستوری اجرا می شود، psql برای رویدادهای اعلان ناهمزمان نیز نظرسنجی می کند
تولید شده توسط گوش بده(7) و اعلام کردن(7).

در حالی که نظرات بلوک به سبک C برای پردازش و حذف به سرور ارسال می شود،
نظرات استاندارد SQL توسط psql حذف می شوند.

فرا دستورات
هر چیزی که در psql وارد می‌کنید و با بک اسلش بدون نقل قول شروع می‌شود، یک دستور متا psql است.
که توسط خود psql پردازش می شود. این دستورات psql را برای مدیریت مفیدتر می کند
یا اسکریپت نویسی دستورات متا معمولاً دستورات اسلش یا بک اسلش نامیده می شوند.

فرمت یک دستور psql به صورت بک اسلش است که بلافاصله بعد از آن یک فعل دستوری می آید.
سپس هر گونه استدلال آرگومان ها از فعل فرمان و با یکدیگر جدا می شوند
هر تعداد کاراکتر فضای خالی

برای گنجاندن فضای خالی در یک آرگومان، می‌توانید آن را با نقل قول تکی نقل‌قول کنید. برای گنجاندن الف
یک نقل قول در یک آرگومان، دو نقل قول را در متن تک نقل قولی بنویسید. هر چیزی
موجود در گیومه های تکی علاوه بر این مشمول جایگزینی های C مانند برای \n (جدید
خط)، \t (برگه)، \b (بازگشت)، \r (بازگشت حمل)، \f (فید فرم)، \رقم (هشتی)،
و \xرقم (هگزادسیمال). اسلش قبل از هر کاراکتر دیگری در نقل قول تکی
متن از آن شخصیت واحد نقل قول می کند، هر چه که باشد.

در یک آرگومان، متنی که در quote (`) محصور شده است به عنوان خط فرمان در نظر گرفته می شود
که به پوسته منتقل می شود. خروجی فرمان (با حذف هر خط جدید آخر)
متن نقل قول شده را جایگزین می کند.

اگر یک کولون بدون نقل قول (:) به دنبال نام متغیر psql در یک آرگومان ظاهر شود، آن را نشان می دهد
همانطور که در SQL Interpolation توضیح داده شده است، با مقدار متغیر جایگزین می شود.

برخی از دستورات یک شناسه SQL (مانند نام جدول) را به عنوان آرگومان می گیرند. این استدلال ها
از قوانین نحوی SQL پیروی کنید: حروف نقل قول نشده مجبور به حروف کوچک و دو برابر می شوند
نقل قول ها (") حروف را از تبدیل حروف محافظت می کند و اجازه می دهد فضای خالی را در آن ادغام کنید
شناسه در داخل گیومه های دوتایی، گیومه های دوتایی جفت شده به یک مظنه دوتایی کاهش می یابد
در نام حاصل مثلاً FOO"BAR"BAZ به fooBARbaz تعبیر می شود و "A
weird"" name" به یک نام عجیب تبدیل می شود.

تجزیه آرگومان ها در انتهای خط یا زمانی که اسلش بدون نقل قول دیگری باشد متوقف می شود
یافت. یک بک اسلش بدون نقل قول به عنوان شروع یک متا فرمان جدید در نظر گرفته می شود. خاص
دنباله \\ (دو اسلش معکوس) پایان آرگومان ها را نشان می دهد و به تجزیه SQL ادامه می دهد.
دستورات، در صورت وجود به این ترتیب دستورات SQL و psql می توانند آزادانه در یک خط مخلوط شوند. اما در هر
در مورد، آرگومان های یک فرافرمان نمی توانند فراتر از انتهای خط ادامه پیدا کنند.

فرا دستورات زیر تعریف شده اند:

\a
اگر فرمت خروجی جدول کنونی تراز نباشد، به تراز می شود. اگر هست
بدون تراز نیست، روی بدون تراز تنظیم شده است. این دستور برای عقب نگه داشته می شود
سازگاری دیدن \pset برای یک راه حل کلی تر

\c یا \ اتصال [ dbname [ نام کاربری ] [ میزبان ] [ بندر ] ] | اطلاعاتی
اتصال جدیدی به سرور PostgreSQL برقرار می کند. پارامترهای اتصال برای استفاده
را می توان با استفاده از نحو موقعیتی یا با استفاده از اتصال conninfo مشخص کرد
رشته هایی که در بخش 31.1.1، "رشته های اتصال" در مستندات توضیح داده شده است.

هنگام استفاده از پارامترهای موقعیتی، در صورت وجود هر یک از dbname, نام کاربری, میزبان or بندر حذف می شوند
یا به صورت - مشخص می شود، مقدار آن پارامتر از اتصال قبلی استفاده می شود.
اگر اتصال قبلی وجود نداشته باشد، پیش فرض libpq برای مقدار پارامتر است
استفاده شده. هنگام استفاده از رشته های conninfo، هیچ مقداری از اتصال قبلی برای آن استفاده نمی شود
اتصال جدید

اگر اتصال جدید با موفقیت انجام شود، اتصال قبلی بسته می شود. اگر
تلاش برای اتصال ناموفق بود (نام کاربری اشتباه، دسترسی ممنوع شد، و غیره)، قبلی
اتصال تنها در صورتی حفظ می شود که psql در حالت تعاملی باشد. هنگام اجرای الف
اسکریپت غیر تعاملی، پردازش بلافاصله با یک خطا متوقف می شود. این
تمایز به عنوان راحتی کاربر در برابر اشتباهات تایپی از یک طرف انتخاب شد و الف
مکانیسم ایمنی که اسکریپت ها به طور تصادفی روی پایگاه داده اشتباه روی آن عمل نمی کنند
دست دیگر

مثال:

=> \c mydb myuser host.dom 6432
=> \c service=foo
=> \c "host=localhost port=5432 dbname=mydb connect_timeout=10 sslmode=disable"
=> \c postgresql://tom@localhost/mydb?application_name=myapp

\C [ عنوان ]
عنوان هر جدولی را که در نتیجه یک پرس و جو چاپ می شود تنظیم می کند یا هر جدولی را تنظیم می کند
عنوان. این دستور معادل \pset title است عنوان. (نام این دستور
از "caption" مشتق شده است، زیرا قبلاً فقط برای تنظیم عنوان در HTML استفاده می شد
جدول.)

\cd [ فهرست راهنما ]
دایرکتوری کاری فعلی را به تغییر می دهد فهرست راهنما. بدون استدلال، تغییرات در
فهرست اصلی کاربر فعلی

نوک
برای چاپ دایرکتوری کاری فعلی خود، از \! pwd.

\conninfo
اطلاعات مربوط به اتصال پایگاه داده فعلی را خروجی می کند.

\کپی 🀄 { جدول [( column_list ) ] | ( پرس و جو ) } { از | به } { 'نام فایل' | برنامه
"فرمان" | stdin | stdout | pstdin | pstdout } [ [ با ] ( انتخاب [، ...] )
کپی جلویی (مشتری) را انجام می دهد. این عملیاتی است که یک SQL را اجرا می کند کپی کردن(7)
دستور، اما به جای اینکه سرور فایل مشخص شده را بخواند یا بنویسد، psql می خواند
یا فایل را می نویسد و داده ها را بین سرور و سیستم فایل محلی هدایت می کند.
این بدان معناست که دسترسی و امتیازات فایل متعلق به کاربر محلی است نه کاربر
سرور، و هیچ امتیاز ابرکاربر SQL مورد نیاز نیست.

وقتی برنامه مشخص شد، فرمان توسط psql اجرا می شود و داده ها از یا به ارسال می شوند
فرمان بین سرور و کلاینت هدایت می شود. باز هم، امتیازات اجرایی
متعلق به کاربر محلی است، نه سرور، و هیچ امتیاز ابرکاربر SQL وجود ندارد
مورد نیاز است.

برای \copy ... از stdin، ردیف‌های داده از همان منبعی خوانده می‌شوند که آن را صادر کرده است
دستور، تا \. خوانده می شود یا جریان به EOF می رسد. این گزینه مفید است
برای پر کردن جداول به صورت خطی در یک فایل اسکریپت SQL. برای \copy ... به stdout،
خروجی به همان مکان خروجی فرمان psql و COPY ارسال می شود تعداد دفعات مشاهده فرمان
وضعیت چاپ نمی شود (زیرا ممکن است با یک ردیف داده اشتباه گرفته شود). خواندن/نوشتن
ورودی یا خروجی استاندارد psql بدون توجه به منبع دستور فعلی یا گزینه \o،
از pstdin یا به pstdout بنویسید.

سینتکس این دستور مشابه SQL است کپی کردن(7) فرمان. همه گزینه ها
به غیر از منبع/مقصد داده، همانطور که مشخص شده است کپی کردن(7). به خاطر همین،
قوانین تجزیه خاص برای \کپی 🀄 فرمان به طور خاص، متغیر psql
قوانین تعویض و فرارهای بک اسلش اعمال نمی شود.

نوک
این عملیات به اندازه SQL کارآمد نیست کپی کردن دستور دهید زیرا همه داده ها باید
از طریق اتصال کلاینت/سرور عبور کند. برای مقادیر زیاد داده، SQL
فرمان ممکن است ارجح باشد.

\کپی رایت
حق چاپ و شرایط توزیع PostgreSQL را نشان می دهد.

\d[S+] [ الگو ]
برای هر رابطه (جدول، نما، نمایه، توالی یا جدول خارجی) یا نوع ترکیبی
مطابقت دادن الگو، تمام ستون ها، انواع آنها، فضای جدول (اگر نه
پیش فرض) و هر ویژگی خاص مانند NOT NULL یا پیش فرض ها. شاخص های مرتبط،
محدودیت ها، قوانین و محرک ها نیز نشان داده شده اند. برای جداول خارجی، مربوطه
سرور خارجی نیز نشان داده شده است. ("تطابق با الگو" در الگوها تعریف شده است
زیر.)

برای برخی از انواع رابطه، \d اطلاعات اضافی را برای هر ستون نشان می دهد: ستون
مقادیر برای توالی ها، عبارت نمایه شده برای نمایه ها و گزینه های بسته بندی داده های خارجی
برای میزهای خارجی

فرم دستور \d+ یکسان است، با این تفاوت که اطلاعات بیشتری نمایش داده می شود: any
نظرات مرتبط با ستون های جدول نشان داده شده است، همانطور که وجود دارد
OID ها در جدول، تعریف view اگر رابطه یک view است، یک غیر پیش فرض است
تنظیم هویت ماکت

به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. یک الگو یا اصلاح کننده S را ارائه دهید
شامل اشیاء سیستم

توجه داشته باشید:
If \d بدون a استفاده می شود الگو استدلال، معادل است با \dtvsE که خواهد شد
لیستی از تمام جداول قابل مشاهده، نماها، توالی ها و جداول خارجی را نشان می دهد. این هست
صرفا یک اقدام راحتی

\da[S] [ الگو ]
توابع انبوه را همراه با نوع بازگشتی آنها و انواع داده آنها فهرست می کند
عمل کنند اگر الگو مشخص شده است، فقط مجموعه هایی هستند که نام آنها با الگو مطابقت دارد
نشان داده شده. به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. ارائه یک الگو یا S
اصلاح کننده برای شامل کردن اشیاء سیستم.

\db[+] [ الگو ]
فضاهای جدول را فهرست می کند. اگر الگو مشخص شده است، فقط جدول هایی که نام آنها مطابقت دارد
الگو نشان داده شده است. اگر + به نام فرمان اضافه شود، هر جدول در لیست قرار می گیرد
با گزینه های مرتبط، اندازه روی دیسک، مجوزها و توضیحات.

\dc[S+] [ الگو ]
تبدیل بین کدهای مجموعه کاراکتر را فهرست می کند. اگر الگو مشخص شده است، فقط
تبدیل هایی که نام آنها با الگو مطابقت دارد فهرست شده است. به طور پیش فرض، فقط توسط کاربر ایجاد می شود
اشیاء نشان داده شده است. یک الگو یا اصلاح کننده S را برای شامل کردن اشیاء سیستم ارائه دهید. اگر +
به نام فرمان اضافه می شود، هر شی با مرتبط با آن فهرست می شود
شرح.

\dC[+] [ الگو ]
کست ها را لیست می کند. اگر الگو مشخص شده است، فقط بازیگرانی که نوع منبع یا هدف آنها هستند
مطابقت با الگو ذکر شده است. اگر + به نام فرمان اضافه شود، هر شیء است
با توضیحات مرتبط آن فهرست شده است.

\dd[S] [ الگو ]
توصیف اشیاء از نوع محدودیت، کلاس عملگر، خانواده عملگر،
قانون، و ماشه. تمام نظرات دیگر ممکن است توسط بک اسلش مربوطه مشاهده شود
دستورات برای آن نوع شی

\dd توضیحاتی را برای اشیاء مطابق با آن نمایش می دهد الگو، یا از اشیاء قابل مشاهده از
نوع مناسب در صورت عدم ارائه آرگومان اما در هر صورت، فقط به آن اعتراض می کند
دارای توضیحات ذکر شده است. به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. عرضه
یک الگو یا اصلاح کننده S برای شامل کردن اشیاء سیستم.

توضیحات برای اشیا را می توان با ایجاد کرد چگونه(7) دستور SQL.

\ddp [ الگو ]
تنظیمات امتیاز دسترسی پیش‌فرض را فهرست می‌کند. یک ورودی برای هر نقش (و طرحواره،
در صورت وجود) که تنظیمات امتیاز پیش‌فرض از آن تغییر کرده است
پیش فرض های داخلی اگر الگو مشخص شده است، فقط ورودی هایی که نام نقش یا طرح آنها وجود دارد
نام مطابق با الگوی فهرست شده است.

ALTER DEFAULT PRIVILEGES (ALTER_DEFAULT_PRIVILEGESدستور (7)) برای تنظیم استفاده می شود
امتیازات دسترسی پیش فرض معنی نمایش امتیاز در زیر توضیح داده شده است
اعطا کردن(7).

\dD[S+] [ الگو ]
دامنه ها را فهرست می کند. اگر الگو مشخص شده است، فقط دامنه هایی هستند که نام آنها با الگو مطابقت دارد
نشان داده شده. به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. ارائه یک الگو یا S
اصلاح کننده برای شامل کردن اشیاء سیستم. اگر + به نام فرمان اضافه شود، هر شیء
همراه با مجوزها و توضیحات مرتبط آن فهرست شده است.

\dE[S+] [ الگو ]
\di[S+] [ الگو ]
\dm[S+] [ الگو ]
\ds[S+] [ الگو ]
\dt[S+] [ الگو ]
\dv[S+] [ الگو ]
در این گروه از دستورات، حروف E، i، m، s، t و v مخفف جدول خارجی هستند.
به ترتیب نمایه، نمای تحقق یافته، ترتیب، جدول و نما. می توانید هر کدام را مشخص کنید
یا همه این حروف، به هر ترتیب، برای به دست آوردن فهرستی از اشیاء از این نوع.
برای مثال، \dit فهرست ها و جداول را فهرست می کند. اگر + به نام فرمان اضافه شود، هر کدام
شی با اندازه فیزیکی آن بر روی دیسک و توضیحات مربوط به آن، اگر
هر اگر الگو مشخص شده است، فقط اشیایی که نام آنها با الگو مطابقت دارد لیست می شود.
به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. یک الگو یا اصلاح کننده S را ارائه دهید
شامل اشیاء سیستم

\des[+] [ الگو ]
سرورهای خارجی را فهرست می کند (یادداشت: "سرورهای خارجی"). اگر الگو مشخص شده است، فقط
سرورهایی که نام آنها با الگو مطابقت دارد لیست شده اند. اگر از فرم \des+ استفاده شود، a
توضیحات کامل هر سرور نشان داده شده است، از جمله ACL سرور، نوع، نسخه،
گزینه ها و توضیحات

\det[+] [ الگو ]
جداول خارجی را فهرست می کند (یادداشت: "جدول خارجی"). اگر الگو مشخص شده است، فقط
ورودی هایی که نام جدول یا نام طرحواره آنها با الگو مطابقت دارد فهرست شده اند. اگر فرم
\det+ استفاده می شود، گزینه های عمومی و توضیحات جدول خارجی نیز نمایش داده می شود.

\deu[+] [ الگو ]
نگاشت های کاربر را فهرست می کند (یادداشت: «کاربران خارجی»). اگر الگو مشخص شده است، فقط آن ها
نگاشتهایی که نام کاربری آنها با الگو مطابقت دارد فهرست شده است. اگر از فرم \deu+ استفاده شود،
اطلاعات اضافی در مورد هر نقشه نشان داده شده است.

احتیاط
\deu+ همچنین ممکن است نام کاربری و رمز عبور کاربر راه دور را نمایش دهد، پس مراقب باشید
باید آنها را افشا نکرد.

\ شبنم[+] [ الگو ]
بسته‌بندی‌های داده‌های خارجی را فهرست می‌کند (مانمونیک: «پوشش‌های خارجی»). اگر الگو مشخص شده است،
فقط آن دسته از بسته‌بندی‌های داده خارجی که نامشان با الگو مطابقت دارد فهرست شده‌اند. اگر
فرم \dew+ استفاده می‌شود، ACL، گزینه‌ها و توضیحات پوشش داده‌های خارجی هستند
نیز نشان داده شده است.

\df[antwS+] [ الگو ]
توابع را همراه با آرگومان ها، انواع برگشتی و انواع تابع فهرست می کند.
که به عنوان "agg" (جمع)، "عادی"، "ماشه" یا "پنجره" طبقه بندی می شوند. به
فقط توابع از نوع خاص را نمایش دهید، حروف مربوطه a، n، t یا را اضافه کنید
w به فرمان. اگر الگو مشخص شده است، فقط توابعی که نام آنها مطابقت دارد
الگو نشان داده شده است. به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. ارائه یک الگو
یا اصلاح کننده S برای شامل اشیاء سیستم. اگر از فرم \df+ استفاده می شود، اضافی
اطلاعات مربوط به هر عملکرد نشان داده شده است، از جمله طبقه بندی امنیتی،
نوسانات، مالک، زبان، کد منبع و توضیحات.

نوک
برای جستجوی توابعی که آرگومان‌ها یا مقادیری از یک نوع خاص را برمی‌گردانند، از استفاده کنید
قابلیت جستجوی پیجر شما برای پیمایش در خروجی \df.

\dF[+] [ الگو ]
تنظیمات جستجوی متن را فهرست می کند. اگر الگو مشخص شده است، فقط پیکربندی هایی که
نام مطابق با الگو نشان داده شده است. اگر از فرم \dF+ استفاده می شود، شرح کاملی از
هر پیکربندی نشان داده شده است، از جمله تجزیه کننده جستجوی متن زیربنایی و
فهرست فرهنگ لغت برای هر نوع رمز تجزیه کننده.

\dFd[+] [ الگو ]
لغت نامه های جستجوی متن را فهرست می کند. اگر الگو مشخص شده است، فقط لغت نامه هایی که نام آنها
مطابقت با الگو نشان داده شده است. اگر از فرم \dFd+ استفاده شود، اطلاعات اضافی است
در مورد هر فرهنگ لغت انتخابی، از جمله الگوی جستجوی متن زیرین نشان داده شده است
و مقادیر گزینه

\dFp[+] [ الگو ]
تجزیه کننده های جستجوی متن را فهرست می کند. اگر الگو مشخص شده است، فقط تجزیه کننده هایی که نام آنها مطابقت دارد
الگو نشان داده شده است. اگر از فرم \dFp+ استفاده شود، شرح کامل هر تجزیه کننده است
نشان داده شده است، از جمله توابع زیربنایی و لیست انواع توکن های شناخته شده.

\dFt[+] [ الگو ]
الگوهای جستجوی متن را فهرست می کند. اگر الگو مشخص شده است، فقط الگوهایی که نام آنها مطابقت دارد
الگو نشان داده شده است. اگر از فرم \dFt+ استفاده شود، اطلاعات اضافی نشان داده می شود
در مورد هر الگو، از جمله نام توابع زیربنایی.

\dg[+] [ الگو ]
نقش های پایگاه داده را فهرست می کند. (از آنجایی که مفاهیم "کاربران" و "گروه ها" متحد شده اند
به "roles"، این دستور اکنون معادل \du است.) If الگو مشخص شده است، فقط
نقش هایی که نام آنها با الگو مطابقت دارد فهرست شده است. اگر از فرم \dg+ استفاده شود،
اطلاعات اضافی در مورد هر نقش نشان داده شده است. در حال حاضر این نظر را برای
هر نقش

\dl
این نام مستعار برای است \lo_list، که لیستی از اجسام بزرگ را نشان می دهد.

\dL[S+] [ الگو ]
زبان های رویه ای را فهرست می کند. اگر الگو مشخص شده است، فقط زبان هایی که نام آنها مطابقت دارد
الگو ذکر شده است. به طور پیش فرض، فقط زبان های ایجاد شده توسط کاربر نشان داده می شود. عرضه کنید
اصلاح کننده S برای شامل کردن اشیاء سیستم. اگر + به نام فرمان اضافه شود، هر کدام
زبان همراه با کنترل کننده تماس، اعتبارسنجی، امتیازات دسترسی و اینکه آیا آن فهرست شده است
یک شی سیستم است.

\dn[S+] [ الگو ]
طرحواره ها (فضاهای نام) را فهرست می کند. اگر الگو مشخص شده است، فقط طرحواره هایی که نام آنها مطابقت دارد
الگو ذکر شده است. به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. عرضه الف
الگو یا اصلاح کننده S برای شامل کردن اشیاء سیستم. اگر + به دستور اضافه شود
نام، هر شی با مجوزها و توضیحات مربوط به آن، در صورت وجود، فهرست شده است.

\do[S+] [ الگو ]
عملگرها را با نوع عملوند و نتیجه آنها فهرست می کند. اگر الگو مشخص شده است، فقط
عملگرهایی که نام آنها با الگو مطابقت دارد لیست شده است. به طور پیش فرض، فقط توسط کاربر ایجاد می شود
اشیاء نشان داده شده است. یک الگو یا اصلاح کننده S را برای شامل کردن اشیاء سیستم ارائه دهید. اگر +
به نام فرمان اضافه می شود، اطلاعات اضافی در مورد هر اپراتور نشان داده می شود،
در حال حاضر فقط نام تابع زیربنایی است.

\dO[S+] [ الگو ]
فهرست بندی ها اگر الگو مشخص شده است، فقط مجموعه هایی که نام آنها مطابقت دارد
الگو ذکر شده است. به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. ارائه یک الگو
یا اصلاح کننده S برای شامل اشیاء سیستم. اگر + به نام فرمان اضافه شود،
هر مجموعه با توضیحات مربوط به آن، در صورت وجود، فهرست شده است. توجه داشته باشید که فقط
مجموعه های قابل استفاده با رمزگذاری پایگاه داده فعلی نشان داده شده است، بنابراین نتایج ممکن است
در پایگاه داده های مختلف نصب یکسان متفاوت است.

\dp [ الگو ]
جدول ها، نماها و دنباله ها را با امتیازات دسترسی مرتبط آنها فهرست می کند. اگر الگو
مشخص شده است، فقط جداول، نماها و دنباله هایی هستند که نام آنها با الگو مطابقت دارد
ذکر شده.

La اعطا کردن(7) و احضار کنید(7) از دستورات برای تنظیم امتیازات دسترسی استفاده می شود. معنای
نمایش امتیاز در زیر توضیح داده شده است اعطا کردن(7).

\drds [ الگوی نقش [ الگوی پایگاه داده ] ]
تنظیمات پیکربندی تعریف شده را فهرست می کند. این تنظیمات می توانند نقش خاصی داشته باشند،
مخصوص پایگاه داده یا هر دو. الگوی نقش و الگوی پایگاه داده برای انتخاب استفاده می شود
به ترتیب نقش‌ها و پایگاه‌های اطلاعاتی خاص را فهرست کنید. اگر حذف شده باشد، یا اگر * مشخص شده باشد،
همه تنظیمات فهرست شده است، از جمله مواردی که مختص نقش یا پایگاه داده نیستند،
بود.

نقش جایگزین (ALTER_ROLE(7)) و ALTER DATABASE (ALTER_DATABASE(7)) دستورات هستند
برای تعریف تنظیمات پیکربندی هر نقش و هر پایگاه داده استفاده می شود.

\dT[S+] [ الگو ]
انواع داده ها را فهرست می کند. اگر الگو مشخص شده است، فقط انواعی که نام آنها با الگو مطابقت دارد
فهرست شده اند. اگر + به نام فرمان اضافه شود، هر نوع با آن فهرست می شود
نام داخلی و اندازه، مقادیر مجاز آن در صورتی که نوع enum باشد، و مرتبط با آن
مجوزها به طور پیش فرض، فقط اشیاء ایجاد شده توسط کاربر نشان داده می شوند. ارائه یک الگو یا
اصلاح کننده S برای شامل کردن اشیاء سیستم.

\du[+] [ الگو ]
نقش های پایگاه داده را فهرست می کند. (از آنجایی که مفاهیم "کاربران" و "گروه ها" متحد شده اند
به "roles"، این دستور اکنون معادل \dg است.) اگر الگو مشخص شده است، فقط
نقش هایی که نام آنها با الگو مطابقت دارد فهرست شده است. اگر از فرم \du+ استفاده شود،
اطلاعات اضافی در مورد هر نقش نشان داده شده است. در حال حاضر این نظر را برای
هر نقش

\dx[+] [ الگو ]
پسوندهای نصب شده را فهرست می کند. اگر الگو مشخص شده است، فقط پسوندهایی که نام آنها
مطابقت با الگو ذکر شده است. اگر از فرم \dx+ استفاده شود، تمام اشیاء متعلق به
هر پسوند منطبق ذکر شده است.

\dy[+] [ الگو ]
محرک های رویداد را فهرست می کند. اگر الگو مشخص شده است، فقط آن رویدادهایی که نام آنها را تحریک می کند
مطابقت با الگو ذکر شده است. اگر + به نام فرمان اضافه شود، هر شیء است
با توضیحات مرتبط آن فهرست شده است.

\e یا \ویرایش [ نام فایل ] [ شماره خط ]
If نام فایل مشخص شده است، فایل ویرایش می شود. پس از خروج ویرایشگر، محتوای آن است
به بافر پرس و جو کپی شد. اگر نه نام فایل داده شده است، بافر پرس و جو فعلی است
در یک فایل موقت کپی می شود که سپس به همان روش ویرایش می شود.

سپس بافر پرس و جوی جدید طبق قوانین عادی psql، که در آن، دوباره تجزیه می شود
کل بافر به عنوان یک خط واحد در نظر گرفته می شود. (بنابراین شما نمی توانید اسکریپت ها را به این شکل بسازید.
استفاده کنید \i برای آن.) این بدان معناست که اگر پرس و جو با نقطه ویرگول (یا حاوی) پایان یابد، آن را
بلافاصله اجرا می شود. در غیر این صورت فقط در بافر query منتظر می ماند. نوع
نقطه ویرگول یا \g برای ارسال، یا \r برای لغو.

اگر شماره خط مشخص شده باشد، psql مکان نما را در خط مشخص شده قرار می دهد
فایل یا بافر پرس و جو توجه داشته باشید که اگر یک آرگومان تمام رقمی داده شود، psql
فرض می کند که یک شماره خط است، نه نام فایل.

نوک
برای اطلاع از نحوه پیکربندی و سفارشی کردن ویرایشگر خود، به بخش ENVIRONMENT مراجعه کنید.

\ پژواک متن [...]
آرگومان ها را در خروجی استاندارد چاپ می کند که با یک فاصله از هم جدا شده و به دنبال آن a قرار دارد
خط جدید. این می تواند برای پراکندگی اطلاعات در خروجی اسکریپت ها مفید باشد. برای
مثال:

=> \ پژواک "تاریخ".
سه شنبه 26 اکتبر 21:40:57 CEST 1999

اگر آرگومان اول یک -n نقل قول نشده باشد، خط جدید انتهایی نوشته نمی شود.

نوک
اگر از شما استفاده می کنید \o دستور برای تغییر مسیر خروجی پرس و جو شما ممکن است بخواهید از آن استفاده کنید
\qecho به جای این دستور

\ef [ function_description [ شماره خط ] ]
این دستور تعریف تابع نامگذاری شده را به شکل a واکشی و ویرایش می کند
ايجاد كردن OR جایگزین کردن FUNCTION فرمان ویرایش به همان روشی که برای \edit انجام می شود انجام می شود.
پس از خروج ویرایشگر، دستور به روز شده در بافر query منتظر می ماند. نقطه ویرگول تایپ کنید
یا \g برای ارسال، یا \r برای لغو.

تابع هدف را می توان با نام به تنهایی یا با نام و آرگومان ها برای مشخص کرد
مثال foo (عدد صحیح، متن). اگر بیش از یک آرگومان وجود دارد، باید انواع آرگومان ارائه شود
تابعی به همین نام

اگر هیچ تابعی مشخص نشده باشد، یک خالی ايجاد كردن FUNCTION الگو برای ارائه شده است
ویرایش.

اگر شماره خط مشخص شده باشد، psql مکان نما را در خط مشخص شده قرار می دهد
بدن عملکرد (توجه داشته باشید که بدنه عملکرد معمولاً از اول شروع نمی شود
خط فایل.)

نوک
برای اطلاع از نحوه پیکربندی و سفارشی کردن ویرایشگر خود، به بخش ENVIRONMENT مراجعه کنید.

\ رمزگذاری [ پشتیبانی می کند ]
رمزگذاری مجموعه کاراکتر مشتری را تنظیم می کند. این دستور بدون آرگومان نشان می دهد
رمزگذاری فعلی

\f [ رشته ]
جداکننده فیلد را برای خروجی پرس و جو بدون تراز تنظیم می کند. پیش فرض نوار عمودی است
(|). همچنین ببینید \pset برای یک روش عمومی برای تنظیم گزینه های خروجی.

\g [ نام فایل ]
\g [ |فرمان ]
بافر ورودی پرس و جو فعلی را به سرور ارسال می کند و به صورت اختیاری پرس و جو را ذخیره می کند
خروجی در نام فایل یا خروجی را به فرمان پوسته لوله می کند فرمان. فایل یا
دستور فقط در صورتی نوشته می شود که پرس و جو با موفقیت صفر یا چند تاپل را برگرداند، نه
اگر پرس و جو شکست بخورد یا یک دستور SQL غیر برگردان داده باشد.

یک \g خالی اساساً معادل نقطه ویرگول است. یک \g با آرگومان "یک شات" است
جایگزین برای \o فرمان

\gset [ پیشوند ]
بافر ورودی پرس و جو فعلی را به سرور ارسال می کند و خروجی پرس و جو را در آن ذخیره می کند
متغیرهای psql (به متغیرها مراجعه کنید). کوئری که باید اجرا شود باید دقیقاً یک سطر برگرداند.
هر ستون از ردیف در یک متغیر جداگانه ذخیره می شود که همان نام آن است
ستون مثلا:

=> انتخاب کنید 'سلام' AS var1، 10 AS var2
-> \gset
=> \ پژواک :var1 :var2
سلام 10

اگر الف را مشخص کنید پیشوند، آن رشته به نام ستون های پرس و جو اضافه شده است
نام متغیرها را برای استفاده ایجاد کنید:

=> انتخاب کنید 'سلام' AS var1، 10 AS var2
-> \gset نتیجه_
=> \ پژواک :result_var1 :result_var2
سلام 10

اگر نتیجه ستون NULL باشد، متغیر مربوطه به جای تنظیم، تنظیم نشده است.

اگر کوئری با شکست مواجه شود یا یک سطر را برنگرداند، هیچ متغیری تغییر نمی کند.

\h یا \help [ فرمان ]
به دستور SQL مشخص شده کمک نحوی می دهد. اگر فرمان مشخص نشده است، سپس psql
تمام دستوراتی را که راهنمای نحوی برای آنها موجود است فهرست می کند. اگر فرمان است
ستاره (*)، سپس راهنمای نحو در تمام دستورات SQL نشان داده شده است.

توجه داشته باشید:
برای ساده کردن تایپ، دستوراتی که از چند کلمه تشکیل شده اند، لازم نیست
نقل شده است. بنابراین تایپ کردن خوب است \کمک تغییر دادن جدول.

\H یا \html
قالب خروجی پرس و جوی HTML را روشن می کند. اگر قالب HTML از قبل روشن باشد، تغییر می کند
به فرمت متن تراز شده پیش فرض برگردید. این دستور برای سازگاری و
راحتی، اما ببینید \pset در مورد تنظیم سایر گزینه های خروجی

\i یا \شامل نام فایل
ورودی فایل را می خواند نام فایل و آن را طوری اجرا می کند که انگار روی آن تایپ شده است
صفحه کلید

If نام فایل است - (هیفن)، سپس ورودی استاندارد خوانده می شود تا زمانی که نشانه EOF یا \q
فرا فرمان این می تواند برای پراکندگی ورودی تعاملی با ورودی از فایل ها استفاده شود.
توجه داشته باشید که رفتار Readline تنها در صورتی استفاده می شود که در بیرونی ترین سطح فعال باشد.

توجه داشته باشید:
اگر می خواهید خطوط روی صفحه را همانطور که خوانده می شوند ببینید، باید آن را تنظیم کنید
متغیر ECHO به همه.

\ir یا \include_relative نام فایل
دستور \ir شبیه \i است، اما نام فایل‌های نسبی را متفاوت حل می‌کند. چه زمانی
اجرای در حالت تعاملی، دو دستور یکسان رفتار می کنند. با این حال، زمانی که
\ir که از یک اسکریپت فراخوانی می شود، نام فایل ها را نسبت به دایرکتوری که در آن است تفسیر می کند
اسکریپت به جای دایرکتوری کاری فعلی قرار دارد.

\l[+] یا \list[+] [ الگو ]
پایگاه داده ها را در سرور فهرست کنید و نام، صاحبان، مجموعه کاراکترها را نشان دهید
کدگذاری ها و امتیازات دسترسی اگر الگو مشخص شده است، فقط پایگاه هایی که نام آنهاست
مطابقت با الگو ذکر شده است. اگر + به نام فرمان اضافه شود، اندازه پایگاه داده،
جدول های پیش فرض و توضیحات نیز نمایش داده می شوند. (اطلاعات اندازه فقط است
برای پایگاه های داده ای که کاربر فعلی می تواند به آنها متصل شود، در دسترس است.)

\lo_صادرات لود نام فایل
شی بزرگ را با OID می خواند لود از پایگاه داده و آن را می نویسد نام فایل. توجه داشته باشید
که این به طور ماهرانه ای با عملکرد سرور متفاوت است lo_export، که با
مجوزهای کاربر که سرور پایگاه داده به عنوان و بر روی فایل سرور اجرا می کند
سیستم.

نوک
استفاده کنید \lo_list برای پیدا کردن OID جسم بزرگ.

\lo_import نام فایل [ توضیح ]
فایل را در یک شی بزرگ PostgreSQL ذخیره می کند. به صورت اختیاری، داده شده را مرتبط می کند
نظر با شی مثال:

foo=> \lo_import '/home/peter/pictures/photo.xcf' 'a تصویر of من
lo_import 152801

پاسخ نشان می دهد که شی بزرگ شناسه شی 152801 را دریافت کرده است که می تواند باشد
برای دسترسی به شی بزرگ تازه ایجاد شده در آینده استفاده می شود. به خاطر
خوانایی، توصیه می شود همیشه یک نظر قابل خواندن توسط انسان را با هر یک مرتبط کنید
هدف - شی. هر دو OID و نظرات را می توان با مشاهده کرد \lo_list فرمان

توجه داشته باشید که این دستور به طور ماهرانه ای با سمت سرور متفاوت است lo_import به این دلیل که
به جای کاربر و سرور به عنوان کاربر محلی در سیستم فایل محلی عمل می کند
سیستم فایل

\lo_list
لیستی از تمام اشیاء بزرگ PostgreSQL که در حال حاضر در پایگاه داده ذخیره شده اند را به همراه نمایش می دهد
با هر نظر ارائه شده برای آنها.

\lo_unlink لود
شی بزرگ را با OID حذف می کند لود از پایگاه داده

نوک
استفاده کنید \lo_list برای پیدا کردن OID جسم بزرگ.

\o یا \out [ نام فایل ]
\o یا \out [ |فرمان ]
ترتیبی می دهد تا نتایج پرس و جوی آینده در فایل ذخیره شود نام فایل یا لوله نتایج آتی به
فرمان پوسته فرمان. اگر هیچ آرگومانی مشخص نشده باشد، خروجی پرس و جو به حالت اولیه بازنشانی می شود
خروجی استاندارد

"نتایج پرس و جو" شامل تمام جداول، پاسخ های فرمان، و اعلان های به دست آمده از
سرور پایگاه داده و همچنین خروجی دستورات بک اسلش مختلف که پرس و جو می کنند
پایگاه داده (مانند \d) اما نه پیام های خطا.

نوک
برای پراکندگی متن خروجی در بین نتایج پرس و جو، استفاده کنید \qecho.

\p یا \print
بافر درخواست فعلی را در خروجی استاندارد چاپ کنید.

\کلمه عبور [ نام کاربری ]
رمز عبور کاربر مشخص شده (به طور پیش فرض، کاربر فعلی) را تغییر می دهد. این
فرمان رمز عبور جدید را درخواست می کند، آن را رمزگذاری می کند و به عنوان رمز به سرور ارسال می کند
تغییر دهید نقش فرمان این اطمینان حاصل می کند که رمز عبور جدید در متن واضح ظاهر نمی شود
در تاریخچه فرمان، گزارش سرور یا هر جای دیگر.

\سریع [ متن ] نام
از کاربر می خواهد متنی را ارائه کند که به متغیر اختصاص داده شده است نام. یک اختیاری
رشته اعلان، متن، می توان مشخص کرد. (برای درخواست های چند کلمه ای، متن را با
نقل قول های تک.)

به طور پیش فرض، \prompt از ترمینال برای ورودی و خروجی استفاده می کند. با این حال، اگر -f فرمان
سوئیچ خط استفاده شد، \ prompt از ورودی استاندارد و خروجی استاندارد استفاده می کند.

\pset [ انتخاب [ ارزش ] ]
این دستور گزینه هایی را تنظیم می کند که بر خروجی جداول نتیجه پرس و جو تأثیر می گذارد. انتخاب
نشان می دهد که کدام گزینه قرار است تنظیم شود. معناشناسی از ارزش بسته به
گزینه انتخاب شده برای برخی از گزینه ها، حذف ارزش باعث می شود که گزینه تغییر کند یا
unset، همانطور که در زیر گزینه خاص توضیح داده شده است. اگر چنین رفتاری ذکر نشده باشد،
سپس حذف ارزش فقط منجر به نمایش تنظیمات فعلی می شود.

\pset بدون هیچ آرگومان وضعیت فعلی همه گزینه های چاپ را نمایش می دهد.

گزینه های چاپ قابل تنظیم عبارتند از:

مرز
La ارزش باید یک عدد باشد. به طور کلی، هر چه این عدد بیشتر باشد، حاشیه ها و
خطوطی که جداول خواهند داشت، اما جزئیات به فرمت خاص بستگی دارد. در HTML
قالب، این به طور مستقیم به صفت border=... ترجمه می شود. در اکثر موارد دیگر
فقط مقادیر 0 (بدون حاشیه)، 1 (خطوط تقسیم داخلی) و 2 (جدول) را فرمت می کند.
فریم) منطقی است، و مقادیر بالای 2 مانند مرز = 2 در نظر گرفته می شوند
فرمت‌های latex و latex-longtable علاوه بر این، مقدار 3 را برای اضافه کردن تقسیم می‌دهند
خطوط بین ردیف های داده

ستون ها
پهنای هدف را برای قالب بسته بندی شده و همچنین محدودیت عرض را تنظیم می کند
تعیین اینکه آیا خروجی به اندازه کافی گسترده است که به پیجر نیاز داشته باشد یا به آن سوئیچ شود
صفحه نمایش عمودی در حالت خودکار گسترش یافته. صفر (پیش فرض) باعث پهنای هدف می شود
توسط متغیر محیطی کنترل شود ستون ها، یا عرض صفحه شناسایی شده
if ستون ها تنظیم نشده است. علاوه بر این، اگر ستون ها صفر است، فرمت پیچیده شده است
فقط بر روی خروجی صفحه تاثیر می گذارد. اگر ستون ها غیر صفر هستند، خروجی فایل و لوله است
به آن عرض نیز پیچیده شده است.

گسترش یافته (یا x)
If ارزش مشخص شده است که باید روشن یا خاموش باشد که فعال یا غیرفعال می شود
حالت گسترش یافته یا خودکار اگر ارزش حذف شده است دستور جابجایی بین on و
تنظیمات خاموش هنگامی که حالت توسعه یافته فعال است، نتایج پرس و جو به دو صورت نمایش داده می شود
ستون ها، با نام ستون در سمت چپ و داده ها در سمت راست. این حالت است
اگر داده ها در حالت عادی "افقی" روی صفحه نمایش قرار نگیرند مفید است. که در
با تنظیم خودکار، هر زمان که خروجی پرس و جو گسترده تر باشد، از حالت توسعه یافته استفاده می شود
از صفحه نمایش، در غیر این صورت از حالت عادی استفاده می شود. تنظیم خودکار فقط است
در قالب های تراز و بسته بندی شده موثر است. در قالب های دیگر، همیشه رفتار می کند
انگار حالت گسترش یافته خاموش است.

فیلدسپ
جداکننده فیلد را برای استفاده در فرمت خروجی بدون تراز مشخص می کند. به این ترتیب یکی
می تواند برای مثال، خروجی جدا شده با تب یا کاما، که برنامه های دیگر ایجاد کند
ممکن است ترجیح دهد برای تنظیم یک برگه به ​​عنوان جداکننده فیلد، \pset fieldsep '\t' را تایپ کنید. در
جداکننده فیلد پیش فرض '|' است (یک نوار عمودی).

fieldsep_zero
جداکننده فیلد را برای استفاده در فرمت خروجی بدون تراز روی صفر بایت تنظیم می کند.

بالا و پایین صفحه
If ارزش مشخص شده است که باید روشن یا خاموش باشد که فعال یا غیرفعال می شود
نمایش پاورقی جدول ((n ردیف) شمارش). اگر ارزش دستور حذف شده است
نمایش پاورقی را روشن یا خاموش می کند.

قالب
فرمت خروجی را روی یکی از unaligned, aligned, wrapped, html, asciidoc تنظیم می کند.
لاتکس (از جدولی استفاده می کند)، latex-longtable یا troff-ms. اختصارات منحصر به فرد هستند
مجاز. (این بدان معناست که یک حرف کافی است.)

فرمت unaligned تمام ستون های یک سطر را روی یک خط می نویسد که با علامت از هم جدا شده اند
جداکننده میدان در حال حاضر فعال است. این برای ایجاد خروجی که ممکن است مفید باشد
در نظر گرفته شده برای خواندن توسط سایر برنامه ها (به عنوان مثال، جدا شده از برگه یا
قالب جدا شده با کاما).

فرمت تراز، خروجی متن استاندارد، قابل خواندن توسط انسان و با فرمت زیبا است. این
پیش فرض است.

فرمت پیچیده مانند تراز شده است، اما مقادیر گسترده داده را در بین خطوط می پیچد تا آن را ایجاد کند
تناسب خروجی در عرض ستون هدف. عرض هدف همانطور که توضیح داده شد تعیین می شود
زیر گزینه ستون ها توجه داشته باشید که psql سعی نخواهد کرد هدر ستون را بپیچد
عناوین بنابراین، فرمت بسته بندی شده مانند تراز شده در عرض کل عمل می کند
مورد نیاز برای سرصفحه ستون از هدف فراتر می رود.

فرمت های html، asciidoc، latex، latex-longtable و troff-ms جداول را ارائه می دهند.
که قرار است با استفاده از نشانه گذاری مربوطه در اسناد گنجانده شوند
زبان مدارک کامل نیستند! این ممکن است در HTML ضروری نباشد،
اما در LaTeX باید یک بسته بندی سند کامل داشته باشید. میز بلند لاتکس نیز
به بسته‌های longtable و booktabs LaTeX نیاز دارد.

سبک لباس
سبک ترسیم خط مرزی را به یکی از ascii، old-ascii یا unicode تنظیم می کند. منحصر بفرد
اختصارات مجاز است. (این بدان معناست که یک حرف کافی است.) پیش فرض
تنظیم ascii است. این گزینه فقط بر فرمت های خروجی تراز و بسته بندی شده تأثیر می گذارد.

سبک ascii از کاراکترهای ساده ASCII استفاده می کند. خطوط جدید در داده ها با استفاده از + نشان داده می شوند
نماد در حاشیه سمت راست هنگامی که فرمت پیچیده داده ها را از یک خط می پیچد
به بعدی بدون کاراکتر خط جدید، یک نقطه (.) در سمت راست نشان داده می شود
حاشیه خط اول و دوباره در حاشیه سمت چپ خط زیر.

سبک old-ascii از کاراکترهای ASCII ساده استفاده می کند، با استفاده از سبک قالب بندی استفاده شده در
PostgreSQL 8.4 و نسخه های قبلی. خطوط جدید در داده ها با استفاده از نماد : در محل نشان داده می شوند
از جداکننده ستون سمت چپ. هنگامی که داده ها از یک خط به خط پیچیده می شوند
بعدی بدون کاراکتر خط جدید، a ; نماد به جای سمت چپ استفاده می شود
جداکننده ستون

سبک یونیکد از کاراکترهای طراحی جعبه یونیکد استفاده می کند. خطوط جدید در داده ها نشان داده شده است
با استفاده از نماد بازگشت کالسکه در حاشیه سمت راست. وقتی داده ها پیچیده می شوند
از یک خط به خط دیگر بدون کاراکتر خط جدید، یک نماد بیضی نشان داده می شود
در حاشیه سمت راست خط اول، و دوباره در حاشیه سمت چپ از
خط زیر

هنگامی که تنظیمات حاشیه بزرگتر از صفر است، گزینه linestyle نیز تعیین می کند
کاراکترهایی که خطوط مرزی با آنها ترسیم می شود. کاراکترهای ASCII ساده کار می کنند
در همه جا، اما کاراکترهای یونیکد در نمایشگرهایی که آنها را تشخیص می دهند زیباتر به نظر می رسند.

تهی
رشته ای را که باید چاپ شود را به جای مقدار تهی تنظیم می کند. پیش فرض چاپ است
هیچ چیز، که به راحتی می تواند با یک رشته خالی اشتباه گرفته شود. به عنوان مثال، یکی ممکن است
\pset null '(null)' را ترجیح می دهند.

عددی
If ارزش مشخص شده است که باید روشن یا خاموش باشد که فعال یا غیرفعال می شود
نمایش یک کاراکتر محلی خاص برای جدا کردن گروه‌هایی از ارقام در سمت چپ
نشانگر اعشاری اگر ارزش حذف شده است دستور جابجایی بین معمولی و
خروجی عددی خاص محلی

صفحه
استفاده از یک برنامه پیجر را برای پرس و جو و خروجی کمک psql کنترل می کند. اگر محیط
متغیر PAGER تنظیم شده است، خروجی به برنامه مشخص شده لوله می شود. در غیر این صورت الف
پیش فرض وابسته به پلت فرم (مانند موارد بیشتر) استفاده می شود.

وقتی گزینه پیجر خاموش است، از برنامه پیجر استفاده نمی شود. زمانی که گزینه پیجر
روشن است، پیجر در مواقع مناسب استفاده می شود، یعنی زمانی که خروجی به ترمینال است
و روی صفحه نمایش جا نمی شود. گزینه پیجر را نیز می توان روی همیشه تنظیم کرد که
باعث می شود که پیجر برای تمام خروجی های ترمینال صرف نظر از مناسب بودن آن استفاده شود
روی صفحه نمایش \pset پیجر بدون a ارزش استفاده از پیجر را روشن و خاموش می کند.

پیجر_مین_خطوط
اگر pager_min_lines روی عددی بزرگتر از ارتفاع صفحه تنظیم شود، پیجر
برنامه فراخوانی نخواهد شد مگر اینکه حداقل این تعداد خطوط خروجی وجود داشته باشد
نشان دادن تنظیم پیش فرض 0 است.

رکورد
جداکننده رکورد (خط) را برای استفاده در فرمت خروجی بدون تراز مشخص می کند. در
پیش فرض یک کاراکتر خط جدید است.

recordsep_zero
جداکننده رکورد را برای استفاده در قالب خروجی بدون تراز روی صفر بایت تنظیم می کند.

tabletattr (یا T)
در فرمت HTML، این ویژگی ها را مشخص می کند که درون تگ جدول قرار گیرند. این
به عنوان مثال می تواند cellpadding یا bgcolor باشد. توجه داشته باشید که احتمالاً نمی خواهید
مرز را در اینجا مشخص کنید، زیرا قبلاً توسط \pset border مراقبت شده است. اگر نه ارزش
داده شده است، صفات جدول تنظیم نشده است.

در قالب latex-longtable، این پهنای متناسب هر ستون را کنترل می کند
حاوی یک نوع داده تراز چپ. به عنوان یک فضای خالی جدا شده مشخص شده است
لیست مقادیر، به عنوان مثال "0.2 0.2 0.6". ستون های خروجی نامشخص از آخرین استفاده می کنند
مقدار مشخص شده

عنوان
عنوان جدول را برای هر جدولی که بعداً چاپ می شود تنظیم می کند. از این می توان برای دادن استفاده کرد
برچسب های توصیفی خروجی شما اگر نه ارزش داده شده است، عنوان تنظیم نشده است.

tuples_only (یا t)
If ارزش مشخص شده است که باید روشن یا خاموش باشد که فعال یا غیرفعال می شود
حالت فقط تاپلی اگر ارزش حذف شده است دستور جابجایی بین معمولی و
خروجی فقط تاپل خروجی منظم شامل اطلاعات اضافی مانند ستون است
سرصفحه ها، عناوین و پاورقی های مختلف. در حالت فقط تاپل، فقط داده های جدول واقعی
نشان داده شده است.

unicode_border_linestyle
سبک ترسیم حاشیه برای سبک خط یونیکد را روی یکی از یا تک تنظیم می کند
دو برابر.

unicode_column_linestyle
سبک ترسیم ستون را برای سبک خط یونیکد روی یکی از یا تک تنظیم می کند
دو برابر.

unicode_header_linestyle
سبک طراحی سرصفحه را برای سبک خط یونیکد روی یکی از یا تک تنظیم می کند
دو برابر.

تصاویری از نحوه ظاهر این فرمت های مختلف را می توان در بخش EXAMPLES مشاهده کرد.

نوک
دستورات میانبر مختلفی برای آن وجود دارد \psetاست. دیدن \a, \C, \H, \t, \Tو \x.

\q یا خروج
از برنامه psql خارج می شود. در یک فایل اسکریپت، فقط اجرای آن اسکریپت خاتمه می یابد.

\qecho متن [...]
این دستور یکسان است \ پژواک با این تفاوت که خروجی در پرس و جو نوشته می شود
کانال خروجی، همانطور که توسط \o.

\r یا \بازنشانی
بافر پرس و جو را بازنشانی می کند (پاک می کند).

\s [ نام فایل ]
تاریخچه خط فرمان psql را چاپ کنید نام فایل. اگر نام فایل حذف شده است، تاریخ است
روی خروجی استاندارد نوشته شده است (در صورت لزوم با استفاده از پیجر). این دستور نیست
اگر psql بدون پشتیبانی Readline ساخته شده باشد در دسترس است.

\تنظیم [ نام [ ارزش [ ... ] ]
متغیر psql را تنظیم می کند نام به ارزش، یا اگر بیش از یک مقدار داده شود، به
الحاق همه آنها اگر فقط یک آرگومان داده شود، متغیر با تنظیم می شود
یک مقدار خالی برای تنظیم یک متغیر، از تنظیم نشده است فرمان

\تنظیم بدون هیچ آرگومان، نام ها و مقادیر تمام psql تنظیم شده فعلی را نمایش می دهد
متغیرها

نام متغیرهای معتبر می تواند شامل حروف، اعداد و زیرخط باشد. بخش را ببینید
متغیرهای زیر برای جزئیات نام متغیرها به حروف بزرگ و کوچک حساس هستند.

اگرچه می‌توانید هر متغیری را روی هر چیزی که می‌خواهید تنظیم کنید، psql چندین متغیر را درمان می‌کند
متغیرها به عنوان خاص آنها در بخش مربوط به متغیرها مستند شده اند.

توجه داشته باشید:
این دستور با دستور SQL ارتباطی ندارد مجموعه(7).

\setenv نام [ ارزش ]
متغیر محیطی را تنظیم می کند نام به ارزش، یا اگر ارزش عرضه نمی شود، تنظیم نمی شود
متغیر محیطی مثال:

testdb=> \setenv PAGER کمتر
testdb=> \setenv کمتر -imx4F

\sf[+] function_description
این دستور تعریف تابع نامگذاری شده را به شکل a واکشی می کند و نشان می دهد
ايجاد كردن OR جایگزین کردن FUNCTION فرمان تعریف در پرس و جو فعلی چاپ می شود
کانال خروجی، همانطور که توسط \o.

تابع هدف را می توان با نام به تنهایی یا با نام و آرگومان ها برای مشخص کرد
مثال foo (عدد صحیح، متن). اگر بیش از یک آرگومان وجود دارد، باید انواع آرگومان ارائه شود
تابعی به همین نام

اگر + به نام فرمان اضافه شود، خطوط خروجی با شماره گذاری می شوند
خط اول بدنه تابع خط 1 است.

\t
نمایش عناوین نام ستون های خروجی و پاورقی تعداد ردیف ها را تغییر می دهد. این دستور
معادل \pset tuples_only است و برای راحتی ارائه شده است.

\T table_options
مشخص می کند که در قالب خروجی HTML درون تگ جدول قرار گیرند. این
دستور معادل \pset tabletattr است table_options.

\زمان سنجی [ on | خاموش ]
بدون پارامتر، نمایشی از مدت زمانی که هر دستور SQL طول می کشد را تغییر می دهد
میلی ثانیه با پارامتر، یکسان تنظیم می شود.

تنظیم نشده است نام
متغیر psql را از حالت تنظیم خارج می کند (حذف می کند). نام.

\w یا \نوشتن نام فایل
\w یا \نوشتن |فرمان
بافر پرس و جو فعلی را به فایل خروجی می دهد نام فایل یا آن را به فرمان پوسته لوله می کند
فرمان.

\تماشا کردن [ ثانیه ]
به طور مکرر بافر پرس و جو فعلی (مانند \g) را تا زمانی که وقفه یا پرس و جو ایجاد شود، اجرا کنید
شکست می خورد. تعداد ثانیه های مشخص شده (پیش فرض 2) بین اجراها صبر کنید.

\ایکس [ on | خاموش | خودکار ]
حالت قالب بندی جدول گسترش یافته را تنظیم یا تغییر می دهد. به این ترتیب معادل \pset است
منبسط.

\z [ الگو ]
جدول ها، نماها و دنباله ها را با امتیازات دسترسی مرتبط آنها فهرست می کند. اگر یک
الگو مشخص شده است، فقط جداول، نماها و دنباله هایی که نام آنها با الگو مطابقت دارد
ذکر شده اند

این نام مستعار برای است \dp ("امتیازات نمایش").

\! [ فرمان ]
به یک پوسته جداگانه فرار می کند یا دستور شل را اجرا می کند فرمان. استدلال ها هستند
بیشتر تفسیر نشده است پوسته آنها را همانطور که هست می بیند. به طور خاص، متغیر
قوانین تعویض و فرارهای بک اسلش اعمال نمی شود.

\؟ [ موضوع ]
اطلاعات راهنما را نشان می دهد. اختیاری موضوع پارامتر (پیش‌فرض دستورات) را انتخاب می‌کند
کدام قسمت از psql توضیح داده شده است: دستورات دستورات بک اسلش psql را توصیف می کند. گزینه ها
گزینه های خط فرمان را که می توان به psql ارسال کرد را توصیف می کند. و متغیرها را نشان می دهد
کمک در مورد متغیرهای پیکربندی psql.

الگوهای
دستورات مختلف \d a را می پذیرند الگو پارامتر برای تعیین نام(های) شی مورد نظر
نمایش داده. در ساده ترین حالت، یک الگو فقط نام دقیق شی است. در
کاراکترهای درون یک الگو معمولاً مانند نام‌های SQL به حروف کوچک تا می‌شوند.
برای مثال، \dt FOO جدولی به نام foo را نمایش می دهد. همانطور که در نام های SQL، قرار دادن double
نقل قول ها در اطراف یک الگو از تا شدن به حروف کوچک باز می مانند. در صورتی که نیاز باشد یک
کاراکتر نقل قول مضاعف واقعی در یک الگو، آن را به صورت یک جفت نقل قول مضاعف در داخل بنویسید
دنباله دو نقل قول؛ باز هم این مطابق با قوانین SQL نقل شده است
شناسه ها برای مثال، \dt "FOO""BAR" جدولی به نام FOO"BAR را نمایش می دهد (نه
foo"bar).
بخشی از یک الگو، به عنوان مثال \dt FOO"FOO"BAR جدول نامگذاری شده را نمایش می دهد
fooFOObar.

هر زمان که الگو پارامتر به طور کامل حذف شده است، دستورات \d همه را نشان می دهد
اشیایی که در مسیر جستجوی طرحواره فعلی قابل مشاهده هستند - این معادل است
از * به عنوان الگو استفاده کنید. (به یک شی گفته می شود که اگر شمای حاوی آن باشد قابل مشاهده است
در مسیر جستجو و هیچ شیئی با همان نوع و نام قبل از آن ظاهر نمی شود
مسیر جستجو این معادل عبارتی است که شی را می توان با آن ارجاع داد
نام بدون صلاحیت طرحواره صریح.) برای دیدن همه اشیاء در پایگاه داده
صرف نظر از قابلیت مشاهده، از *.* به عنوان الگو استفاده کنید.

در یک الگو، * با هر دنباله ای از کاراکترها (از جمله هیچ کاراکتری) مطابقت دارد و ?
با هر شخصیت منطبق است (این نماد با نام فایل پوسته یونیکس قابل مقایسه است
الگوها.) برای مثال، \dt int* جداولی را نمایش می دهد که نام آنها با int شروع می شود. ولی
در دو گیومه، * و ? این معانی خاص را از دست می دهند و فقط مطابقت دارند
به معنای واقعی کلمه.

الگویی که حاوی یک نقطه (.) است به عنوان یک الگوی نام طرح و به دنبال آن تفسیر می شود
یک الگوی نام شی به عنوان مثال، \dt foo*.*bar* تمام جدول هایی را که جدول آنها را نشان می دهد
نام شامل نوارهایی است که در طرحواره هایی هستند که نام طرحواره آنها با foo شروع می شود. وقتی بدون نقطه
ظاهر می شود، سپس الگو فقط با اشیایی که در طرحواره فعلی قابل مشاهده هستند مطابقت دارد
مسیر جستجو مجدداً، یک نقطه در داخل گیومه های دوگانه معنای خاص خود را از دست می دهد و است
به معنای واقعی کلمه مطابقت دارد.

کاربران پیشرفته می‌توانند از نمادهای بیان منظم مانند کلاس‌های کاراکتر استفاده کنند
مثال [0-9] برای مطابقت با هر رقمی. همه کاراکترهای ویژه بیان منظم به عنوان کار می کنند
مشخص شده در بخش 9.7.3، "عبارات منظم POSIX"، در مستندات، به جز
برای . که همانطور که در بالا ذکر شد به عنوان جداکننده گرفته می شود * که به the ترجمه می شود
نماد بیان منظم .*، ? که به . ترجمه می شود و $ که مطابقت دارد
به معنای واقعی کلمه. آیا می توانید با نوشتن این کاراکترهای الگو را در صورت نیاز تقلید کنید؟ برای .، (R+|)
برای R*، یا (R|) برای R?. $ به عنوان یک کاراکتر با بیان منظم مورد نیاز نیست زیرا
الگو باید با کل نام مطابقت داشته باشد، برخلاف تفسیر معمولی معمولی
عبارات (به عبارت دیگر، $ به طور خودکار به الگوی شما اضافه می شود). بنویسید * در
ابتدا و/یا پایان اگر نمی‌خواهید الگو ثابت شود. توجه داشته باشید که
در میان نقل‌قول‌های دوگانه، همه نویسه‌های خاص عبارت منظم خاص خود را از دست می‌دهند
معانی و به معنای واقعی کلمه مطابقت دارند. همچنین، کاراکترهای خاص عبارت منظم
به معنای واقعی کلمه در الگوهای نام عملگر (یعنی آرگومان \do) مطابقت دارند.

بیشتر امکانات
متغیر
psql ویژگی های جایگزینی متغیر را مشابه پوسته های دستوری رایج یونیکس ارائه می دهد.
متغیرها به سادگی جفت نام/مقدار هستند که مقدار آن می تواند هر رشته ای از هر رشته باشد
طول نام باید از حروف (شامل حروف غیر لاتین)، اعداد و
تاکید می کند.

برای تنظیم یک متغیر، از دستور متا psql استفاده کنید \تنظیم. مثلا،

testdb=> \تنظیم فو بار

متغیر foo را روی نوار مقدار تنظیم می کند. برای بازیابی محتوای متغیر،
قبل از نام با علامت دونقطه، به عنوان مثال:

testdb=> \ پژواک :فو
بار

این هم در دستورات معمولی SQL و هم در دستورات متا کار می کند. جزئیات بیشتری در SQL وجود دارد
درون یابی، در زیر.

اگر تماس بگیرید \تنظیم بدون آرگومان دوم، متغیر با یک رشته خالی تنظیم می شود
به عنوان ارزش برای تنظیم (یعنی حذف) یک متغیر، از دستور استفاده کنید تنظیم نشده است. برای نشان دادن
مقادیر همه متغیرها، فراخوانی کنید \تنظیم بدون هیچ استدلالی

توجه داشته باشید:
استدلال های \تنظیم تابع قوانین جایگزینی مشابه با سایر قوانین هستند
دستورات بنابراین می توانید مراجع جالبی مانند \set :foo بسازید
"چیزی" و "پیوندهای نرم" یا "متغیرهای متغیر" شهرت پرل یا PHP،
به ترتیب. متاسفانه (یا خوشبختانه؟)، هیچ راهی برای انجام هیچ کاری وجود ندارد
با این سازه ها مفید است. از سوی دیگر، \set bar :foo یک گزینه عالی است
روش معتبر برای کپی کردن یک متغیر

تعدادی از این متغیرها به طور ویژه توسط psql درمان می شوند. آنها معین خاصی هستند
تنظیمات گزینه ای که می توان در زمان اجرا با تغییر مقدار متغیر تغییر داد،
یا در برخی موارد نشان دهنده وضعیت قابل تغییر psql است. اگرچه می توانید از اینها استفاده کنید
متغیرها برای اهداف دیگر، این توصیه نمی شود، زیرا رفتار برنامه ممکن است
واقعاً به سرعت عجیب رشد می کند. طبق قرارداد، همه متغیرهای خاص
نام ها از تمام حروف ASCII بزرگ (و احتمالاً اعداد و زیرخط) تشکیل شده است.
برای اطمینان از حداکثر سازگاری در آینده، از استفاده از نام چنین متغیرهایی برای خودداری کنید
اهداف خودت لیستی از همه متغیرهای تحت درمان ویژه در زیر آمده است.

خودکار
هنگامی که روشن است (به طور پیش فرض)، هر دستور SQL به طور خودکار در صورت موفقیت آمیز بودن متعهد می شود
تکمیل. برای به تعویق انداختن commit در این حالت باید a را وارد کنید شروع or استارت
معامله دستور SQL. هنگامی که خاموش یا تنظیم نشده باشد، دستورات SQL تا زمانی که اجرا نمی شوند
شما به صراحت صادر می کنید مرتکب شدن or END. حالت خودکار خاموش با صدور یک علامت کار می کند
ضمنی شروع برای شما، درست قبل از هر دستوری که قبلاً در a نیست
بلوک تراکنش است و خود یک شروع یا دیگر دستورات کنترل تراکنش،
و نه دستوری که نمی تواند در داخل یک بلوک تراکنش اجرا شود (مانند واکسن).

توجه داشته باشید:
در حالت Autocommit-off، شما باید صراحتاً از هر تراکنش ناموفق صرف نظر کنید
وارد شدن پیاده روی or بازگشت. همچنین به خاطر داشته باشید که اگر از جلسه خارج شوید
بدون تعهد، کار شما از بین می رود.

توجه داشته باشید:
حالت Autocommit-on رفتار سنتی PostgreSQL است، اما
Autocommit-off به مشخصات SQL نزدیکتر است. اگر اتکایی خودکار را ترجیح می دهید، شما
ممکن است بخواهید آن را در فایل psqlrc در سطح سیستم یا خود تنظیم کنید ~/.psqlrc فایل.

COMP_KEYWORD_CASE
تعیین می کند که هنگام تکمیل یک کلمه کلیدی SQL از کدام حروف استفاده شود. اگر تنظیم شود
پایین یا بالا، کلمه تکمیل شده به ترتیب با حروف کوچک یا بزرگ خواهد بود.
اگر روی حفظ-پایین یا حفظ-بالا (پیش‌فرض) تنظیم شود، کلمه تکمیل‌شده خواهد بود
در مورد کلمه ای باشد که قبلاً وارد شده است، اما کلمات بدون تکمیل شده باشند
هر چیزی که وارد می شود به ترتیب با حروف کوچک یا بزرگ خواهد بود.

DBNAME
نام پایگاه داده ای که در حال حاضر به آن متصل هستید. این هر بار تنظیم می شود
شما به یک پایگاه داده (از جمله راه اندازی برنامه) وصل می شوید، اما می توانید آن را تنظیم نکنید.

ECHO
اگر روی all تنظیم شود، تمام خطوط ورودی خالی به همان شکلی که هستند در خروجی استاندارد چاپ می شوند
خواندن. (این برای خطوطی که به صورت تعاملی خوانده می شوند صدق نمی کند.) برای انتخاب این رفتار
هنگام راه اندازی برنامه، از سوئیچ استفاده کنید -a. اگر روی Query تنظیم شود، psql هر پرس و جو را چاپ می کند
به خروجی استاندارد همانطور که به سرور ارسال می شود. سوئیچ برای این است -e. اگر تنظیم شود
به خطاها، سپس تنها پرس و جوهای ناموفق در خروجی خطای استاندارد نمایش داده می شوند. در
سوئیچ برای این است -b. اگر تنظیم نشده باشد، یا اگر روی هیچ (یا هر مقدار دیگری غیر از آن‌ها) تنظیم شود
بالا) سپس هیچ درخواستی نمایش داده نمی شود.

ECHO_HIDDEN
وقتی این متغیر روی on تنظیم می‌شود و یک دستور بک اسلش از پایگاه داده درخواست می‌کند،
پرس و جو ابتدا نشان داده می شود. این ویژگی به شما کمک می کند تا به مطالعه داخلی PostgreSQL و
عملکرد مشابهی را در برنامه های خود ارائه دهید. (برای انتخاب این رفتار در
راه اندازی برنامه، از سوئیچ استفاده کنید -E.) اگر متغیر را روی مقدار noexec تنظیم کنید،
کوئری ها فقط نشان داده می شوند اما در واقع به سرور ارسال و اجرا نمی شوند.

رمزگذاری
رمزگذاری مجموعه کاراکتر مشتری فعلی.

FETCH_COUNT
اگر این متغیر روی یک مقدار صحیح > 0 تنظیم شود، نتایج از انتخاب کنید پرس و جو هستند
واکشی شده و در گروه هایی با این تعداد ردیف به جای پیش فرض نمایش داده می شود
رفتار جمع آوری کل مجموعه نتیجه قبل از نمایش بنابراین فقط الف
مقدار محدودی از حافظه صرف نظر از اندازه مجموعه نتیجه استفاده می شود.
هنگام فعال کردن این ویژگی معمولاً از تنظیمات 100 تا 1000 استفاده می شود. یادت باشه
که هنگام استفاده از این ویژگی، ممکن است یک پرس و جو پس از نمایش داده شده با شکست مواجه شود
چند ردیف

نوک
اگرچه می توانید از هر فرمت خروجی با این ویژگی استفاده کنید، اما پیش فرض تراز شده است
فرمت بد به نظر می رسد زیرا هر گروه از FETCH_COUNT ردیف ها خواهد بود
به طور جداگانه قالب بندی شده و منجر به تغییر عرض ستون در گروه های ردیف می شود.
سایر فرمت های خروجی بهتر کار می کنند.

HISTCONTROL
اگر این متغیر روی ignorespace تنظیم شود، خطوطی که با فاصله شروع می شوند، اینطور نیستند
وارد لیست تاریخ شد اگر روی مقدار ignoredups تنظیم شود، خطوط مطابق با
خط تاریخ قبلی وارد نشده است. مقدار ignoreboth این دو را با هم ترکیب می کند
گزینه ها. اگر تنظیم نشده باشد، یا اگر روی هیچ (یا هر مقدار دیگری غیر از مقادیر بالا) تنظیم شود، همه
خطوط خوانده شده در حالت تعاملی در لیست تاریخچه ذخیره می شوند.

توجه داشته باشید:
این ویژگی به طرز بی شرمانه ای از Bash سرقت شده است.

HISTFILE
نام فایلی که برای ذخیره لیست تاریخچه استفاده می شود. مقدار پیش فرض است
~/.psql_history. برای مثال قرار دادن:

HISTFILE را تنظیم کنید ~/.psql_history- :DBNAME

in ~/.psqlrc باعث می شود psql یک تاریخچه جداگانه برای هر پایگاه داده نگه دارد.

توجه داشته باشید:
این ویژگی به طرز بی شرمانه ای از Bash سرقت شده است.

HISTSIZE
تعداد دستوراتی که باید در تاریخچه فرمان ذخیره شوند. مقدار پیش فرض 500 است.

توجه داشته باشید:
این ویژگی به طرز بی شرمانه ای از Bash سرقت شده است.

HOST
میزبان سرور پایگاه داده که در حال حاضر به آن متصل هستید. این هر بار تنظیم می شود
شما به یک پایگاه داده (از جمله راه اندازی برنامه) وصل می شوید، اما می توانید آن را تنظیم نکنید.

نادیده گرفتن
اگر تنظیم نشده باشد، یک کاراکتر EOF (معمولا Control+D) به یک جلسه تعاملی ارسال می شود
psql برنامه را خاتمه می دهد. اگر روی یک مقدار عددی تنظیم شود، این مقدار EOF است
کاراکترها قبل از پایان برنامه نادیده گرفته می شوند. اگر متغیر تنظیم شده باشد
اما مقدار عددی ندارد، پیش فرض 10 است.

توجه داشته باشید:
این ویژگی به طرز بی شرمانه ای از Bash سرقت شده است.

LASTOID
مقدار آخرین OID تحت تأثیر، همانطور که از an برگردانده شده است INSERT or \lo_import
فرمان اعتبار این متغیر فقط تا بعد از نتیجه تضمین شده است
دستور SQL بعدی نمایش داده شده است.

ON_ERROR_ROLLBACK
وقتی روی روشن تنظیم شود، اگر یک دستور در یک بلوک تراکنش خطایی ایجاد کند،
خطا نادیده گرفته می شود و معامله ادامه می یابد. وقتی روی تعاملی تنظیم شود، از جمله
خطاها فقط در جلسات تعاملی نادیده گرفته می شوند، و نه در هنگام خواندن اسکریپت
فایل ها. هنگامی که تنظیم نمی شود یا روی خاموش تنظیم می شود، یک بیانیه در بلوک تراکنش ایجاد می کند
یک خطا کل تراکنش را لغو می کند. حالت برگشت خطا با صدور کار می کند
ضمنی ذخیره کنید برای شما، درست قبل از هر دستوری که در یک تراکنش است
مسدود کنید، و سپس در صورت شکست دستور، به نقطه ذخیره برگردید.

ON_ERROR_STOP
به طور پیش فرض، پردازش فرمان پس از یک خطا ادامه می یابد. وقتی این متغیر تنظیم شود
در عوض، پردازش بلافاصله متوقف می شود. در حالت تعاملی، psql خواهد شد
بازگشت به خط فرمان؛ در غیر این صورت، psql خارج می شود و کد خطای 3 را به آن برمی گرداند
این مورد را از شرایط خطای کشنده که با استفاده از خطا گزارش شده است، متمایز کنید
کد 1. در هر صورت، هر اسکریپت در حال اجرا (اسکریپت سطح بالا، اگر
هر، و هر اسکریپت دیگری که ممکن است در آن فراخوانی کرده باشد) خاتمه خواهد یافت
بلافاصله. مستقیما. اگر رشته فرمان سطح بالا حاوی چندین دستور SQL بود،
پردازش با دستور فعلی متوقف می شود.

PORT
پورت سرور پایگاه داده که در حال حاضر به آن متصل هستید. این در هر تنظیم شده است
زمانی که به پایگاه داده متصل می شوید (از جمله راه اندازی برنامه)، اما می تواند تنظیم نشود.

PROMPT1
PROMPT2
PROMPT3
اینها مشخص می‌کنند که مسائل مربوط به psql چگونه باید باشد. به درخواست زیر مراجعه کنید.

ساکت
تنظیم این متغیر بر روی on معادل گزینه خط فرمان است -q. این است
احتمالاً در حالت تعاملی خیلی مفید نیست.

تک خط
تنظیم این متغیر بر روی on معادل گزینه خط فرمان است -S.

یک قدم
تنظیم این متغیر بر روی on معادل گزینه خط فرمان است -s.

USER
کاربر پایگاه داده ای که در حال حاضر به آن متصل هستید. این هر بار که شما تنظیم می شود
به یک پایگاه داده (از جمله راه اندازی برنامه) متصل شوید، اما می تواند تنظیم نشود.

پرحرفی
این متغیر را می توان به مقادیر پیش فرض، verbose یا مختصر برای کنترل تنظیم کرد
پرمخاطب بودن گزارش های خطا

SQL درون یابی
یکی از ویژگی های کلیدی متغیرهای psql این است که می توانید آنها را جایگزین کنید ("interpolate")
دستورات SQL معمولی و همچنین آرگومان های فرا دستورات. علاوه بر این، psql
امکاناتی را برای اطمینان از اینکه مقادیر متغیر به عنوان SQL literals و استفاده می شود فراهم می کند
شناسه ها به درستی نقل شده اند. نحو برای درونیابی یک مقدار بدون هیچ
نقل قول به این صورت است که نام متغیر را با علامت دونقطه (:) اضافه کنید. مثلا،

testdb=> \تنظیم فو "میز_من"
testdb=> انتخاب کنید * از :foo;

جدول my_table را پرس و جو می کند. توجه داشته باشید که این ممکن است ناامن باشد: مقدار the
متغیر به معنای واقعی کلمه کپی می شود، بنابراین می تواند حاوی نقل قول های نامتعادل یا حتی اسلش باشد
دستورات شما باید مطمئن شوید که منطقی است که آن را در کجا قرار داده اید.

زمانی که قرار است از یک مقدار به عنوان یک SQL SQL یا شناسه استفاده شود، ترتیب آن امن تر است
برای نقل آن برای نقل قول مقدار یک متغیر به عنوان یک SQL literal، یک دونقطه بنویسید
به دنبال آن نام متغیر در گیومه های تکی قرار می گیرد. برای نقل قول مقدار به عنوان یک SQL
شناسه، یک دونقطه و به دنبال آن نام متغیر را در دو گیومه بنویسید. اینها
سازه ها به درستی با نقل قول ها و دیگر کاراکترهای ویژه تعبیه شده در داخل سروکار دارند
مقدار متغیر مثال قبلی با خیال راحت تر به این صورت نوشته می شود:

testdb=> \تنظیم فو "میز_من"
testdb=> انتخاب کنید * از :"فو";

درون یابی متغیر در لفظ SQL نقل قول و انجام نخواهد شد
شناسه ها بنابراین، ساختاری مانند ':foo' برای تولید یک نقل قول کار نمی کند
به معنای واقعی کلمه از مقدار یک متغیر (و اگر کار کند، ناامن خواهد بود، زیرا آن کار می کند
نقل قول های تعبیه شده در مقدار را به درستی مدیریت نمی کند).

یکی از نمونه های استفاده از این مکانیسم کپی کردن محتویات یک فایل در یک جدول است
ستون ابتدا فایل را در یک متغیر بارگذاری کنید و سپس مقدار متغیر را درون یابی کنید
به عنوان یک رشته نقل قول:

testdb=> \تنظیم محتوا `گربه my_file.txt`
testdb=> INSERT را به میز من ارزش (:'محتوا')؛

(توجه داشته باشید که اگر my_file.txt حاوی بایت NUL باشد، این باز هم کار نخواهد کرد. psql ندارد.
پشتیبانی از بایت های NUL تعبیه شده در مقادیر متغیر.)

از آنجایی که دو نقطه به طور قانونی می توانند در دستورات SQL ظاهر شوند، تلاشی آشکار برای درون یابی است
(یعنی :name, :'name' یا :"name") جایگزین نمی شود مگر اینکه متغیر نامگذاری شده باشد
در حال حاضر تنظیم شده است. در هر صورت، برای محافظت از کولون، می‌توانید با یک بک اسلش از آن فرار کنید
تعویض

سینتکس کولون برای متغیرها SQL استاندارد برای زبانهای پرس و جوی جاسازی شده است، مانند
ECPG. نحو کولون برای برش های آرایه و نوع ریخته گری پسوندهای PostgreSQL هستند.
که گاهی اوقات می تواند با استفاده استاندارد در تضاد باشد. نحو کولون نقل قول برای
فرار از مقدار متغیر به عنوان یک کلمه یا شناسه SQL یک پسوند psql است.

اعلان
مسائل مربوط به psql را می توان به دلخواه شما سفارشی کرد. سه متغیر
PROMPT1, PROMPT2و PROMPT3 شامل رشته ها و توالی های فرار ویژه است که
ظاهر اعلان را توصیف کنید. Prompt 1 همان اعلان معمولی است که صادر می شود
زمانی که psql دستور جدیدی را درخواست می کند. درخواست 2 زمانی صادر می شود که ورودی بیشتری انتظار می رود
در حین ورود دستور، زیرا فرمان با نقطه ویرگول یا a خاتمه نمی یابد
نقل قول بسته نشد هنگامی که یک SQL را اجرا می کنید، درخواست 3 صادر می شود کپی کردن فرمان و تو هستی
انتظار می رود مقادیر ردیف را در ترمینال تایپ کند.

مقدار متغیر prompt انتخاب شده به معنای واقعی کلمه چاپ می شود، به جز مواردی که درصد باشد
علامت (%) مشاهده می شود. بسته به کاراکتر بعدی، متن دیگری است
به جای آن جایگزین شد. جایگزین های تعریف شده عبارتند از:

%M
نام میزبان کامل (با نام دامنه) سرور پایگاه داده، یا [محلی] در صورت وجود
اتصال از طریق سوکت دامنه یونیکس یا [local:/dir/name]، اگر دامنه یونیکس باشد
سوکت در محل کامپایل شده در محل پیش فرض نیست.

%m
نام میزبان سرور پایگاه داده، در اولین نقطه کوتاه شده، یا اگر [محلی] باشد
اتصال از طریق سوکت دامنه یونیکس است.

%>
شماره پورتی که سرور پایگاه داده به آن گوش می دهد.

%n
نام کاربری جلسه پایگاه داده (بسط این مقدار ممکن است در طول a تغییر کند
جلسه پایگاه داده به عنوان نتیجه دستور مجموعه جلسه اعتبارسنجی.)

%/
نام پایگاه داده فعلی

%~
مانند %/، اما اگر پایگاه داده پایگاه داده پیش فرض شما باشد، خروجی ~ (tilde) است.

%#
اگر کاربر جلسه یک ابرکاربر پایگاه داده است، یک #، در غیر این صورت یک >. (
گسترش این مقدار ممکن است در طول یک جلسه پایگاه داده در نتیجه تغییر کند
فرمان مجموعه جلسه اعتبارسنجی.)

%R
در اعلان 1 به طور معمول =، اما اگر در حالت تک خطی باشد ^ و ! اگر جلسه باشد
از پایگاه داده قطع شده است (که می تواند اتفاق بیفتد اگر \ اتصال شکست می خورد). در اعلان 2
دنباله با -، *، یک مظنه تک، یک مظنه مضاعف یا یک دلار جایگزین می شود
علامت، بسته به اینکه آیا psql انتظار ورودی بیشتری را دارد، زیرا فرمان اینطور نبود
هنوز خاتمه یافته است، زیرا شما در یک نظر /* ... */ هستید یا به این دلیل که هستید
داخل یک رشته مظنه یا دلاری. در اعلان 3 دنباله تولید نمی شود
هر چیزی.

%x
وضعیت تراکنش: یک رشته خالی وقتی در بلوک تراکنش نیست، یا * وقتی در آن است
یک بلوک تراکنش، یا ! زمانی که در یک بلوک تراکنش ناموفق، یا؟ وقتی که
وضعیت تراکنش نامشخص است (مثلاً چون ارتباطی وجود ندارد).

%l
شماره خط داخل عبارت فعلی که از 1 شروع می شود.

%رقم
کاراکتر با کد هشتگانه نشان داده شده جایگزین می شود.

%:نام:
مقدار متغیر psql نام. برای جزئیات بیشتر به بخش متغیرها مراجعه کنید.

%`فرمان`
خروجی از فرمان، مشابه جایگزینی معمولی "بک تیک".

%[... %]
درخواست‌ها می‌توانند شامل کاراکترهای کنترل ترمینال باشند که برای مثال، آن را تغییر می‌دهند
رنگ، پس‌زمینه یا سبک متن درخواستی را تغییر دهید یا عنوان آن را تغییر دهید
پنجره ترمینال برای اینکه ویژگی های ویرایش خط Readline کار کند
به درستی، این نویسه‌های کنترلی غیرچاپ باید توسط نامرئی تعیین شوند
آنها را با %[ و %] احاطه کنید. چندین جفت از اینها می تواند در داخل رخ دهد
سریع. مثلا:

testdb=> \set PROMPT1 '%[%033[1;33;40m%]%n@%/%R%[%033[0m%]%#'

در سازگار با VT1، یک درخواست پررنگ (33;) زرد روی سیاه (40;100) ایجاد می کند.
پایانه های رنگی
برای درج علامت درصد در درخواست خود، %% را بنویسید. دستورهای پیش فرض '%/%R%#' هستند
برای فرمان های 1 و 2 و '>>' برای فرمان 3.

توجه داشته باشید:
این ویژگی به طرز بی شرمانه ای از tcsh سرقت شده است.

خط فرمان ویرایش
psql از کتابخانه Readline برای ویرایش و بازیابی راحت خط پشتیبانی می کند. را
تاریخچه فرمان به طور خودکار با خروج psql ذخیره می شود و با psql بارگذاری مجدد می شود
راه اندازی می شود. Tab-completion نیز پشتیبانی می‌شود، اگرچه منطق تکمیل، نه را ایجاد می‌کند
ادعا کنید که یک تجزیه کننده SQL هستید. جستارهای ایجاد شده توسط تکمیل برگه نیز می توانند تداخل داشته باشند
با سایر دستورات SQL، به عنوان مثال SET TRANSACTION IOLATION LEVEL. اگر به دلایلی شما
تکمیل برگه را دوست ندارید، می توانید با قرار دادن آن در فایلی به نام آن را خاموش کنید
inputrc. در فهرست اصلی شما:

$if psql
غیرفعال کردن تکمیل را روشن کنید
$endif

(این یک psql نیست، بلکه یک ویژگی Readline است. اسناد آن را برای اطلاعات بیشتر بخوانید
جزئیات.)

محیط زیست


ستون ها
اگر ستون \pset صفر باشد، عرض را برای قالب پیچیده و عرض را برای کنترل می کند
تعیین اینکه آیا خروجی عریض به پیجر نیاز دارد یا باید به حالت عمودی سوئیچ شود
فرمت در حالت خودکار گسترش یافته

PAGER
اگر نتایج پرس و جو بر روی صفحه نمایش قرار نگیرد، از طریق این دستور لوله می شوند.
مقادیر معمولی کم و بیش هستند. پیش فرض وابسته به پلتفرم است. استفاده از
پیجر را می توان با استفاده از \pset فرمان

PGDATABASE
PGHOST
PGPORT
PGUSER
پارامترهای اتصال پیش فرض (به بخش 31.14، "متغیرهای محیطی" مراجعه کنید.
مستندات).

PSQL_EDITOR
تدوین
دیداری
ویرایشگر استفاده شده توسط \e و \ef دستورات متغیرها به ترتیب بررسی می شوند
ذکر شده؛ اولی که تنظیم شده استفاده می شود.

ویرایشگرهای پیش‌فرض داخلی vi در سیستم‌های یونیکس و notepad.exe در ویندوز هستند
سیستم.

PSQL_EDITOR_LINENUMBER_ARG
چه زمانی \e or \ef با آرگومان شماره خط استفاده می شود، این متغیر مقدار را مشخص می کند
آرگومان خط فرمان برای ارسال شماره خط شروع به ویرایشگر کاربر استفاده می شود. برای
ویرایشگرهایی مانند Emacs یا vi، این یک علامت مثبت است. شامل یک فضای دنباله دار در
مقدار متغیر اگر نیاز باشد بین نام گزینه و خط فاصله وجود داشته باشد
عدد. مثال ها:

PSQL_EDITOR_LINENUMBER_ARG='+'
PSQL_EDITOR_LINENUMBER_ARG='--line'

پیش‌فرض در سیستم‌های یونیکس + است (مرتبط با ویرایشگر پیش‌فرض vi و مفید است
برای بسیاری دیگر از ویراستاران رایج)؛ اما در سیستم های ویندوز پیش فرض وجود ندارد.

PSQL_HISTORY
مکان جایگزین برای فایل تاریخچه فرمان. گسترش Tilde (~) انجام می شود.

PSQLRC
مکان جایگزین فایل psqlrc. کاربر. گسترش Tilde (~) انجام می شود.

پوسته
فرمان اجرا شده توسط \! فرمان

TMPDIR
دایرکتوری برای ذخیره فایل های موقت پیش فرض /tmp است.

این ابزار، مانند بسیاری از ابزارهای دیگر PostgreSQL، از متغیرهای محیطی نیز استفاده می کند
پشتیبانی شده توسط libpq (به بخش 31.14، "متغیرهای محیطی"، در مستندات مراجعه کنید).

با استفاده از خدمات onworks.net از psql به صورت آنلاین استفاده کنید


سرورها و ایستگاه های کاری رایگان

دانلود برنامه های ویندوز و لینوکس

دستورات لینوکس

Ad




×
تبلیغات
❤️اینجا خرید کنید، رزرو کنید یا بخرید - رایگان است، به رایگان ماندن خدمات کمک می‌کند.