ฉันมีฐานข้อมูลและฉันจำเป็นต้องรู้การเข้ารหัสเริ่มต้นสำหรับฐานข้อมูล ฉันต้องการรับจากบรรทัดคำสั่ง
ฉันมีฐานข้อมูลและฉันจำเป็นต้องรู้การเข้ารหัสเริ่มต้นสำหรับฐานข้อมูล ฉันต้องการรับจากบรรทัดคำสั่ง
คำตอบ:
จากบรรทัดคำสั่ง:
psql my_database -c 'SHOW SERVER_ENCODING'
จากภายในpsql
SQL IDE หรือ API:
SHOW SERVER_ENCODING
SHOW SERVER_ENCODING;
วิธีที่ 1:
หากคุณลงชื่อเข้าใช้เซิร์ฟเวอร์ db อยู่แล้วให้คัดลอกและวางสิ่งนี้
SHOW SERVER_ENCODING;
ผลลัพธ์:
server_encoding
-----------------
UTF8
สำหรับการเข้ารหัสลูกค้า:
SHOW CLIENT_ENCODING;
วิธีที่ 2:
อีกครั้งถ้าคุณเข้าสู่ระบบแล้วใช้สิ่งนี้เพื่อรับผลตามรายการ
\l
โซลูชันแบบเป็นโปรแกรม:
SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname = 'yourdb';
หากคุณต้องการรับการเข้ารหัสฐานข้อมูล:
psql -U postgres -h somehost --list
คุณจะเห็นสิ่งที่ชอบ:
List of databases
Name | Owner | Encoding
------------------------+----------+----------
db1 | postgres | UTF8
เนื่องจากมีมากกว่าหนึ่งวิธีในการดูแลแมว:
psql -l
แสดงชื่อฐานข้อมูลการเข้ารหัสและอื่น ๆ ทั้งหมด
SELECT character_set_name
FROM information_schema.character_sets
;
information_schema
จากSQL มาตรฐานคีมา information_schema
อยู่ในทุกฐานข้อมูล / character_sets
แคตตาล็อกใช้มุมมองที่กำหนดชื่อ วิธีการนี้ควรจะพกพาทั่วทุกระบบฐานข้อมูลมาตรฐาน
SELECT *
FROM information_schema.character_sets
;
แม้จะมีชื่อเป็นพหูพจน์ก็จะแสดงเพียงแถวเดียวรายงานในฐานข้อมูล / แคตตาล็อกปัจจุบัน
คอลัมน์ที่สามคือcharacter_set_name
:
ชื่อของชุดอักขระปัจจุบันมีการใช้งานเพื่อแสดงชื่อของการเข้ารหัสฐานข้อมูล