Tôi có thể thấy hiện tại search_pathvới:
show search_path ;
Và tôi có thể thiết lập search_pathcho phiên hiện tại với:
set search_path = "$user", public, postgis;
Đồng thời, tôi có thể thiết lập vĩnh viễn cơ sở dữ liệu đãsearch_path cho bằng:
alter database mydb set search_path = "$user", public, postgis ;
Và tôi vĩnh viễn có thể thiết lập search_pathcho một cho vai diễn (người dùng) với:
alter role johnny set search_path = "$user", public, postgis ;
Nhưng tôi muốn biết làm thế nào để xác định cơ sở dữ liệu và cài đặt vai trò là gì (liên quan đến search_path) trước khi thay đổi chúng?
alter role myrole set search_path = "$user", public, postgis ;tôi nhận thấy rằngpg_roles.rolconfig(tương ứng với vai trò của tôi) đã nhận được giá trị{"search_path=\"$user\", public, postgis"}. Ngoài ra,select * from pg_db_role_setting ;bây giờ cho thấy một hàng bổ sung. Và sau khi thực hiện,alter database mydb set search_path = "$user", public, postgis ;tôi thấy một hàng tương ứngselect * from pg_db_role_setting ;- cuối cùng, tôi không chắc chắn làm thế nào để "hoàn tác" những thay đổi này.