最近更新时间:2024-11-26 12:00:23
更改运行时 Relyt 配置参数的值。
SET [ SESSION | LOCAL ] <config_param> { TO | = } { <value> | '<value>' | DEFAULT }
SET [SESSION | LOCAL] TIME ZONE { <value> | '<value>' | LOCAL | DEFAULT }
你可以使用 SET
来更改配置参数的值。新的值仅对当前会话有效。
假设正在运行包含 SET
或 SET SESSION
的事务。如果在运行 SET
或 SET SESSION
后,事务回滚,由 SET
或 SET SESSION
指定的新配置参数设置也将回滚。如果事务被提交,新的配置参数设置在会话结束之前都有效,除非被另一个 SET
覆盖。
SESSION 或 LOCAL
新设置的有效范围。可能的选项包括:
SESSION
:指定更改仅对当前会话有效,这是默认设置。
LOCAL
:指定更改仅对当前事务有效。
<config_param>
配置参数的名称。
<value>
或 DEFAULT
参数的新值。值的数据类型由配置参数决定,可以是字符串常量、标识符、数字,或者它们的逗号分隔列表。你可以用 DEFAULT
来将配置参数设置为其默认值。如果值表示内存大小或时间,请用一对单引号 (' ') 包围值。
SCHEMA
SET SCHEMA 'value'
可以用来替代 SET search_path TO <value>
,以更改 Schema 的搜索路径。只能用这种语法指定一个 Schema。
NAMES
SET NAMES <value>
可以用来替代 SET client_encoding TO <value>
,以更改字符编码。
SEED
使用 SEED
来设置随机数生成器(函数 random()
)的内部种子。可能的值是从 -1 到 1 的浮点数。
Relyt 也允许你调用函数 setseed()
来重置种子。以下是语法:
SELECT setseed(value);
TIME ZONE
SET TIME ZONE <value>
可以用来替代 SET timezone TO <value>
,以重置时区。以下是 <value>
的值示例:
'Europe/Rome'
-7
(从 UTC 向西 7 小时的时区)
INTERVAL '-08:00' HOUR TO MINUTE
(从 UTC 向西 8 小时的时区)
LOCAL
或 DEFAULT
指定使用本地时区或默认时区。
设置 Schema 搜索路径:
SET search_path TO my_schema, public;
将每个查询的段主机内存增加到 200 MB:
SET statement_mem TO '200MB';
将日期样式设置为传统的 POSTGRES,使用 "day before month" 的输入约定:
SET datestyle TO postgres, dmy;
为意大利设置时区:
SET TIME ZONE 'Europe/Rome';
所有的 SET
特性都是 Relyt 扩展,除了 SET TIME ZONE
。
Relyt 中的 SET TIME ZONE
与 SQL 标准中的 SET TIME ZONE
完全兼容,并扩展了对更灵活的时区规范的支持,而 SQL 标准中的 SET TIME ZONE
仅支持数字时区偏移。
纯净模式
鼠标选中内容,快速反馈问题