华为云用户手册

  • string_hash_compatible 参数说明:该参数用来控制char类型和varchar/text类型的hash值计算方式是否相同,以此来判断进行分布列从char类型到相同值的varchar/text类型转换,数据分布变化时,是否需要进行重分布。 参数类型:布尔型 参数单位:无 取值范围: on:表示计算方式相同,不需要进行重分布。 off:表示计算方式不同,需要进行重分布。 计算方式的不同主要体现在字符串计算hash值时传入的字节长度上。(如果为char,则会忽略字符串后面空格的长度,如果为text或varchar,则会保留字符串后面空格的长度。)hash值的计算会影响到查询的计算结果,因此此参数一旦设置后,在整个数据库使用过程中不能再对其进行修改,以避免查询错误。 默认值:off 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • enable_fast_vecop 参数说明:标识是否开启向量化引擎运算优化。对向量化引擎中Timestamp,int32,int64,float8类型的运算优化,并减少行存调用开销,支持自动向量化运算。多租场景下,该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示开启向量化运算优化。 off:表示关闭向量化运算优化。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置关闭影响向量化引擎中Timestamp,int32,int64,float8类型的运算性能。
  • resource_track_log 参数说明:控制自诊断的日志级别。目前仅对多列统计信息进行控制。该参数可在PDB级别设置。 参数类型:枚举类型 参数单位:无 取值范围: summary:显示简略的诊断信息。 detail:显示详细的诊断信息。 目前这两个参数值只在显示多列统计信息未收集的告警的情况下有差别,summary不显示未收集多列统计信息的告警,detail会显示这类告警。 默认值:summary。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • pre_auth_delay 参数说明:启动服务器连接后,延迟指定的时间,再进行认证。允许调试器附加到认证过程上。 参数类型:整型 参数单位:s(秒) 取值范围:0 ~ 60 默认值:0,表示无延迟。 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值60,表示pre_auth_delay为60s;带单位取值1min,表示pre_auth_delay为1min。取值如果要带单位,必须为s、min、h、d。 设置建议:该参数只用于调试和问题定位,为避免影响正常业务运行,生产环境下请确保参数值为默认值0。 设置不当的风险与影响:参数设置为非0时可能会因认证延迟时间过长导致数据库实例状态异常。
  • trace_notify 参数说明:设置是否为LISTEN和NOTIFY命令生成大量调试输出。client_min_messages或log_min_messages级别必须是DEBUG1或者更低,才能把这些输出分别发送到客户端或者服务器日志。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示打开输出功能。 off:表示关闭输出功能。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • trace_recovery_messages 参数说明:启用与恢复相关的调试输出的日志记录,否则不记录日志。该参数允许覆盖正常设置的log_min_messages,但是仅限于特定的消息,建议只在调试备机时使用。 参数类型:枚举类型 参数单位:无 取值范围:有效值有debug5、debug4、debug3、debug2、debug1、log。参数的详细信息请参考表1。 默认值:log 默认值log表示不影响记录决策。 除默认值外,其他值会导致优先级更高的恢复相关调试信息被记录,因为它们有log优先权。对于常见的log_min_messages设置,这会导致无条件地将它们记录到服务器日志上。
  • ignore_system_indexes 参数说明:设置读取系统表时是否忽略系统索引(但是修改系统表时依然同时修改索引)。 这个参数在从系统索引被破坏的表中恢复数据的时候非常有用。 参数类型:布尔型 参数单位:无 取值范围: on:表示忽略系统索引。 off:表示不忽略系统索引。 默认值:off 设置方式:该参数属于BACKEND类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • post_auth_delay 参数说明:在认证成功后,延迟指定的时间,再启动服务器连接。允许调试器附加到启动进程上。 参数类型:整型 参数单位:s(秒) 取值范围:0 ~ 2147 默认值:0,表示无延迟。 设置方式:该参数属于BACKEND类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值60,表示post_auth_delay为60s;带单位取值1min,表示post_auth_delay为1min。取值如果要带单位,必须为s、min、h、d。 设置建议:该参数只用于调试和问题定位,为避免影响正常业务运行,生产环境下请确保参数值为默认值0。 设置不当的风险与影响:参数设置为非0时可能会因认证延迟时间过长导致数据库实例状态异常。
  • ignore_checksum_failure 参数说明: 设置是否忽略数据校验错误。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示忽略数据校验错误。 off:表示数据校验错误正常报错。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:不建议用户修改该参数设置。 设置不当的风险与影响:该参数打开后会导致系统忽略失败(但仍然会告警),继续执行可能导致崩溃,传播或隐藏损坏数据,无法从远程节点恢复数据及其他严重问题。
  • debug_assertions 参数说明:设置是否打开各种断言检查。要使用这个参数,必须在编译 GaussDB 的时候定义宏USE_ASSERT_CHECKING(通过configure选项 --enable-cassert完成)。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示打开断言检查。 off:表示不打开断言检查。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 当启用断言选项编译GaussDB时,debug_assertions默认值为on 。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:该功能能够协助调试,当遇到异常或者崩溃的问题时,请打开此参数,用以定位程序的错误。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • allow_create_sysobject 参数说明:设置是否允许在系统模式下创建或修改函数、存储过程、同义词、聚合函数、操作符等对象。此处的系统模式指数据库初始后自带的模式,但不包含public模式。系统模式的oid通常小于16384。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许初始用户和系统管理员在系统模式下创建或修改函数、存储过程、同义词、聚合函数、操作符等对象,并允许初始用户在系统模式下创建操作符。sysadmin用户默认具有create or replace/alter/grant/revoke系统对象的权限。其他用户是否允许创建这些对象请参考对应模式的权限要求。 off:表示禁止所有用户在系统模式下创建或修改函数、存储过程、同义词、聚合函数、操作符等对象。sysadmin用户默认不具有create or replace/alter/grant/revoke系统对象的权限。 默认值:on 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • allow_system_table_mods 参数说明:设置是否允许修改系统表的结构和系统自带模式的名称。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许修改系统表的结构和系统自带模式的名称。 off:表示不允许修改系统表的结构和系统自带模式的名称。 默认值:off 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:不建议用户修改该参数设置。 设置不当的风险与影响:该参数打开后,可能导致系统表损坏,甚至数据库无法启动等严重问题。
  • 示例 --创建一个普通表。 gaussdb=# CREATE TABLE my_table (c1 int, c2 int) WITH(STORAGE_TYPE=ASTORE); --创建全量物化视图。 gaussdb=# CREATE MATERIALIZED VIEW my_mv AS SELECT * FROM my_table; --创建增量物化视图。 gaussdb=# CREATE INCREMENTAL MATERIALIZED VIEW my_imv AS SELECT * FROM my_table; --基表写入数据。 gaussdb=# INSERT INTO my_table VALUES(1,1),(2,2); --对全量物化视图my_mv进行全量刷新。 gaussdb=# REFRESH MATERIALIZED VIEW my_mv; --对增量物化视图my_imv进行全量刷新。 gaussdb=# REFRESH MATERIALIZED VIEW my_imv; --删除增量物化视图。 gaussdb=# DROP MATERIALIZED VIEW my_imv; --删除全量物化视图。 gaussdb=# DROP MATERIALIZED VIEW my_mv; --删除表my_table。 gaussdb=# DROP TABLE my_table;
  • 参数说明 DEFAULT DEFAULT子句表示这个转换是从源编码到目标编码的默认转换。在一个模式中对于每一个编码对,只应该有一个默认转换。 name 转换的名称,可以被模式限定。如果没有被模式限定,该转换被定义在当前模式中。在一个模式中,转换名称必须唯一。 source_encoding 源编码名称。 dest_encoding 目标编码名称。 function_name 被用来执行转换的函数。函数名可以被模式限定。如果没有,将在路径中查找该函数。函数返回值是成功转换的字节数。 该函数必须具有以下格式: conv_proc( integer, -- 原编码ID integer, -- 目标编码ID cstring, -- 源字符串(空值终止的C字符串) internal, -- 目标(用一个空值终止的C字符串填充) integer, -- 源字符串长度 ) RETURNS void;
  • 注意事项 参数DEFAULT将在客户端和服务器之间默认执行源编码到目标编码之间的转换。要支持这个用法,需要定义双向转换,即从A到B和从B到A之间的转换。 创建转换需拥有函数的EXECUTE权限及目标模式的CREATE权限。 源编码和目标编码都不可以使用SQL_ASCII,因为在涉及SQL_ASCII “encoding”的情况下,服务器的行为是硬连接的。 使用DROP CONVERSION可以移除用户定义的转换。
  • DBE_DESCRIBE DBE_DESCRIBE支持的基础接口请参见表1 DBE_DESCRIBE基础接口说明 表1 DBE_DESCRIBE基础接口说明 接口名称 描述 DBE_DESCRIBE.GET_PROCEDURE_NAME 内部函数,不建议用户使用;从用户的原始输入中提取出存储过程/函数名称。 DBE_DESCRIBE.IS_NUMBER_TYPE 内部函数,不建议用户使用;判断类型是否为数值类型。 DBE_DESCRIBE.GET_PROCEDURE_NAME 内部函数,不建议用户使用。从用户的原始输入中提取出存储过程/函数名称。 DBE_DESCRIBE.GET_PROCEDURE_NAME的函数原型为: 1 2 3 DBE_DESCRIBE.GET_PROCEDURE_NAME( name IN VARCHAR2) RETURNS VARCHAR2; 表2 DBE_DESCRIBE.GET_PROCEDURE_NAME接口参数说明 参数 类型 入参/出参 是否可以为空 描述 name VARCHAR2 IN 否 用户输入的实体名称 DBE_DESCRIBE.IS_NUMBER_TYPE 内部函数,不建议用户使用。判断类型是否为数值类型。 DBE_DESCRIBE.IS_NUMBER_TYPE的函数原型为: 1 2 3 DBE_DESCRIBE.IS_NUMBER_TYPE( type_oid IN INTEGER) RETURNS BOOLEAN; 表3 DBE_DESCRIBE.IS_NUMBER_TYPE接口参数说明 参数 类型 入参/出参 是否可以为空 描述 type_oid INTEGER IN 是 类型的OID 父主题: 基础接口
  • GS_IMCU_SLOT_STATUS GS_IMCU_SLOT_STATUS视图显示数据库中IMCV表中IMCU对应的缓存slot信息,该视图同时存在于PG_CATA LOG 和SYS Schema下。 表1 GS_IMCU_SLOT_STATUS字段 名称 类型 描述 reloid oid 表id。 cu_id integer IMCU id。 col_id integer IMCU 所属列id。 slot_id integer 缓存区slot id。 block_size integer IMCU内存大小,单位字节。 flag char 是否空闲或占用。 父主题: 其他系统视图
  • remote_read_mode 参数说明:远程读功能开关。读取主机上的页面失败时,可以从备机上读取对应的页面。 参数类型:枚举类型 参数单位:无 取值范围:off、non_authentication、authentication off:表示关闭远程读功能。 non_authentication:表示开启远程读功能,但不进行证书认证。 authentication:表示开启远程读功能,但要进行证书认证。 默认值:authentication 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • data_sync_retry 参数说明:控制fsync到磁盘失败后是否继续运行数据库。由于在某些操作系统的场景下,fsync失败后,即使重试阶段再次fsync失败也不会报错,从而导致数据丢失。 参数类型:布尔型 参数单位:无 取值范围: on:表示fsync同步到磁盘失败后采取重试机制,继续运行数据库。 off:表示fsync同步到磁盘失败后直接报panic,停止数据库。 默认值:off 设置方式:该参数属于POSTMASTER类型参数,请参见16.2-表 GUC参数分类中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • exit_on_error 参数说明:若打开该开关,ERROR级别报错会升级为PANIC报错,从而可以产生core堆栈。主要用于问题定位和业务测试。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示ERROR级别报错会升级为PANIC报错。 off:表示不会对ERROR级别报错进行升级。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参见16.2-表 GUC参数分类中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • restart_after_crash 参数说明:若打开该开关,后端线程崩溃时,GaussDB将自动重新初始化此后端线程。 参数类型:布尔型 参数单位:无 取值范围: on:表示GaussDB能够在后端线程崩溃时自动重新初始化此后端线程。在某些情况(比如当采用管理工具(例如xCAT)管理GaussDB时),能够最大限度地提高数据库的可用性。 off:表示能够使得管理工具在后端线程崩溃时获取控制权并采取适当的措施进行处理。 默认值:on 设置方式:该参数属于SIGHUP类型参数,请参见16.2-表 GUC参数分类中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • omit_encoding_error 参数说明:若打开该开关,数据库的客户端字符集编码为UTF-8时,出现的字符编码转换错误将打印在日志中,有转换错误的被转换字符会被忽略,以"?"代替。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示有转换错误的字符将被忽略,以"?"代替,打印错误信息到日志中。 off:表示有转换错误的字符不能被转换,打印错误信息到终端。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参见16.2-表 GUC参数分类中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • cn_send_buffer_size 参数说明:指定数据库主节点发送数据缓存区的大小。 参数类型:整型 参数单位:kB 取值范围:8 ~ 128 默认值:8 设置方式:该参数属于POSTMASTER类型参数,请参见16.2-表 GUC参数分类中对应设置方法进行设置。例如,设置为100,不带单位,表示100kB;设置为128kB,带单位,表示128kB。取值如果要带单位,必须为kB。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • SQL语言分为哪几类? 答:SQL语言分为3类,分别为: DDL(Data Definition Language,数据定义语言),用于定义或修改数据库中的对象,如:表、索引、视图等。 DML(Data Manipulation Language,数据操作语言),用于对数据库表中的数据进行操作。如:插入、更新、查询、删除。 DCL(Data Control Language,数据控制语言),用于设置或更改数据库用户或角色权限。 父主题: FAQ
  • MY_TABLES MY_TABLES视图显示当前用户拥有的表的信息。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 MY_TABLES字段 名称 类型 描述 owner character varying(64) 表的所有者。 table_name character varying(64) 表名称。 tablespace_name character varying(64) 存储表的表空间名称。 dropped character varying 当前表是否已删除: YES:表示已删除。 NO:表示未删除。 num_rows numeric 表的估计行数。 status character varying(8) 当前表是否有效。 VALID:表示当前表有效。 UNUSABLE:表示当前表不可用。 sample_size numeric 分析表使用的样本数量。 temporary character(1) 表是否为临时表: Y:表示是临时表。 N:表示不是临时表。 pct_free numeric 块中空闲空间的最小比例。 ini_trans numeric 事务的初始数量。 max_trans numeric 事务数量的最大值。 avg_row_len integer 平均每行的字节数。 partitioned character varying(3) 表是否为分区表。 YES:是分区表。 NO:不是分区表。 last_analyzed timestamp with time zone 上次分析表的时间。数据库重启后,数据会丢失。 row_movement character varying(8) 是否允许分区行移动。 ENABLED:允许分区行移动。 DISABLED:不允许分区行移动。 compression character varying(8) 是否启用表压缩。 ENABLED:启用表压缩。 DISABLED:不启用表压缩。 duration character varying(15) 临时表的期限。 NULL:表示非临时表。 sys$session:表示会话临时表。 sys$transaction:表示事务临时表。 logical_replication character varying(8) 表是否启用逻辑复制。 ENABLED:启用逻辑复制。 DISABLED:不启用逻辑复制。 external character varying(3) 表是否为外表。 YES:是外表。 NO:不是外表。 logging character varying(3) 表的更改是否记录日志。 YES:表的更改记录日志。 NO:表的更改不记录日志。 default_collation character varying(100) 表的默认排序规则。 degree character varying(10) 扫描表的实例数量。 table_lock character varying(8) 是否启用表级锁。 ENABLED:启用表级锁。 DISABLED:不启用表级锁。 nested character varying(3) 是否为嵌套表。 YES:是嵌套表。 NO:不是嵌套表。 buffer_pool character varying(7) 表的默认缓冲池。 flash_cache character varying(7) 暂不支持,值为NULL。 cell_flash_cache character varying(7) 暂不支持,值为NULL。 skip_corrupt character varying(8) 扫描表是否跳过损坏的块。 ENABLED:跳过损坏的块。 DISABLED:不跳过损坏的块。 has_identity character varying(3) 表是否具有标识列。 YES:有标识列。 NO:没有标识列。 inmemory character varying(8) 是否启用内存列存储。 ENABLED:启用内存列存储。 DISABLED:不启用内存列存储。 segment_created character varying(3) 表段是否已被创建。 YES:表段已被创建。 NO:表段未被创建。 monitoring character varying(3) 是否跟踪表的修改。 YES:跟踪表的修改。 NO:不跟踪表的修改。 cluster_name character varying(128) 暂不支持,值为NULL。 iot_name character varying(128) 暂不支持,值为NULL。 pct_used numeric 暂不支持,值为NULL。 initial_extent numeric 暂不支持,值为NULL。 next_extent numeric 暂不支持,值为NULL。 min_extents numeric 暂不支持,值为NULL。 max_extents numeric 暂不支持,值为NULL。 pct_increase numeric 暂不支持,值为NULL。 freelists numeric 暂不支持,值为NULL。 freelist_groups numeric 暂不支持,值为NULL。 backed_up character varying(1) 暂不支持,值为NULL。 blocks numeric 暂不支持,值为NULL。 empty_blocks numeric 暂不支持,值为NULL。 avg_space numeric 暂不支持,值为NULL。 chain_cnt numeric 暂不支持,值为NULL。 avg_space_freelist_blocks numeric 暂不支持,值为NULL。 num_freelist_blocks numeric 暂不支持,值为NULL。 instances character varying(10) 暂不支持,值为NULL。 cache character varying(5) 暂不支持,值为NULL。 iot_type character varying(12) 暂不支持,值为NULL。 secondary character varying(1) 暂不支持,值为NULL。 global_stats character varying(3) 暂不支持,值为NULL。 user_stats character varying(3) 暂不支持,值为NULL。 cluster_owner character varying(30) 暂不支持,值为NULL。 dependencies character varying(8) 暂不支持,值为NULL。 compression_for character varying(30) 暂不支持,值为NULL。 read_only character varying(3) 暂不支持,值为NULL。 result_cache character varying(7) 暂不支持,值为NULL。 clustering character varying(3) 暂不支持,值为NULL。 activity_tracking character varying(23) 暂不支持,值为NULL。 dml_timestamp character varying(25) 暂不支持,值为NULL。 container_data character varying(3) 暂不支持,值为NULL。 inmemory_priority character varying(8) 暂不支持,值为NULL。 inmemory_distribute character varying(15) 暂不支持,值为NULL。 inmemory_compression character varying(17) 暂不支持,值为NULL。 inmemory_duplicate character varying(13) 暂不支持,值为NULL。 duplicated character varying(1) 暂不支持,值为NULL。 sharded character varying(1) 暂不支持,值为NULL。 hybrid character varying(3) 暂不支持,值为NULL。 cellmemory character varying(24) 暂不支持,值为NULL。 containers_default character varying(3) 暂不支持,值为NULL。 container_map character varying(3) 暂不支持,值为NULL。 extended_data_link character varying(3) 暂不支持,值为NULL。 extended_data_link_map character varying(3) 暂不支持,值为NULL。 inmemory_service character varying(12) 暂不支持,值为NULL。 inmemory_service_name character varying(1000) 暂不支持,值为NULL。 container_map_object character varying(3) 暂不支持,值为NULL。 memoptimize_read character varying(8) 暂不支持,值为NULL。 memoptimize_write character varying(8) 暂不支持,值为NULL。 has_sensitive_column character varying(3) 暂不支持,值为NULL。 admit_null character varying(3) 暂不支持,值为NULL。 data_link_dml_enabled character varying(3) 暂不支持,值为NULL 。 object_id_type character varying(16) 暂不支持,值为NULL。 table_type_owner character varying(128) 暂不支持,值为NULL。 table_type character varying(128) 暂不支持,值为NULL。 compress_for character varying(30) 暂不支持,值为NULL。 父主题: 其他系统视图
  • GS_CLIENT_GLOBAL_KEYS_ARGS GS_CLIENT_GLOBAL_KEYS_ARGS系统表记录密态等值特性中客户端加密主密钥相关元数据信息,每条记录对应客户端加密主密钥的一个键值对信息。 表1 GS_CLIENT_GLOBAL_KEYS_ARGS字段 名称 类型 描述 oid oid 行标识符(隐含字段)。 global_key_id oid 客户端加密主密钥(cmk)oid。 function_name name 值为encryption。 key name 客户端加密主密钥(cmk)的元数据信息对应的名称。 value bytea 客户端加密主密钥(cmk)的元数据信息名称的值。 父主题: 密态等值查询
  • 参数说明 参数 参数说明 ctx 表示给定的上下文。 query 被执行的SQL语句。 args 被执行SQL语句需要绑定的参数。支持按位置绑定和按名称绑定,详情见如下示例。 opts 事务隔离级别和事务访问模式,其中事务隔离级别(opts.Isolation)支持范围为sql.LevelReadUncommitted、sql.LevelReadCommitted、sql.LevelRepeatableRead、sql.LevelSerializable。事务访问模式(opts.ReadOnly)支持范围为true(read only)和false(read write)。 Query类接口Query()、QueryContext()、QueryRow()、QueryRowContext()通常用于查询语句,如SELECT语句。操作语句使用Exec()接口执行,若非查询语句通过Query类接口执行,则执行结果可能与预期不符,因此不建议使用Query类接口执行非查询语句,例如UPDATE/INSERT等。 使用Query类接口执行查询语句的结果需要通过type Rows中Next()接口获取,若不通过Next()接口获取,可能会产生不可预期的错误。
  • 示例 //本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)。 package main //依赖包根据环境中依赖包路径设置。 import ( "database/sql" _ [go驱动模块名] /*请根据go驱动实际模块名替换*/ "log" ) func main() { hostip := os.Getenv("GOHOSTIP") //GOHOSTIP为写入环境变量的IP地址。 port := os.Getenv("GOPORT") //GOPORT为写入环境变量的port。 usrname := os.Getenv("GOUSRNAME") //GOUSRNAME为写入环境变量的用户名。 passwd := os.Getenv("GOPASSWD") //GOPASSWDW为写入环境变量的用户密码。 str := "host=" + hostip + " port=" + port + " user=" + usrname + " password=" + passwd + " dbname=gaussdb sslmode=disable" db, err := sql.Open("gaussdb", str) if err != nil { log.Fatal(err) } defer db.Close() err = db.Ping() if err != nil { log.Fatal(err) } _, err = db.Exec("create table test_bound(id int, name text)") // 按位置绑定 _, err = db.Exec("insert into test_bound(id, name) values(:1, :2)", 1, "张三") if err != nil { log.Fatal(err) } // 按名称绑定 _, err = db.Exec("insert into test_bound(id, name) values(:id, :name)", sql.Named("id", 1), sql.Named("name", "张三")) if err != nil { log.Fatal(err) } }
  • GS_MY_ILMEVALUATIONDETAILS GS_MY_ILMEVALUATIONDETAILS视图描述ADO Task的评估详情信息,包含Task ID,策略信息、对象信息、评估结果以及ADO JOB名称。 表1 GS_MY_ILMEVALUATIONDETAILS字段 名称 类型 描述 task_id bigint ADO Task的ID。 policy_name character varying(128) ADO策略名称,系统自动生成,规则为:p+策略ID。 object_owner character varying(128) 数据对象所在Schema名称。 object_name character varying(128) 数据对象名称。 subobject_name character varying(128) 数据对象分区名称或二级分区名称。 object_type character varying(18) 数据对象类型: TABLE:表。 TABLE PARTITION:分区。 TABLE SUBPARTITION:二级分区。 selected_for_execution character varying(42) 评估结果: SELECTED FOR EXECUTION:评估通过。 PRECONDITION NOT SATISFIED:评估不通过。 JOB ALREADY EXISTS:任务已存在。 job_name character varying(128) 执行具体ADO Job的任务名称,当评估结果为评估通过时,此处有值。 comments character varying(4000) 预留字段。 父主题: OLTP表压缩
  • PG_STATIO_USER_SEQUEN CES PG_STATIO_USER_SEQUENCES视图显示命名空间中所有用户关系表序列的I/O状态信息。 表1 PG_STATIO_USER_SEQUENCES字段 名称 类型 描述 relid oid 序列OID。 schemaname name 序列中模式名。 relname name 序列名。 blks_read bigint 从序列中读取的磁盘块数。 blks_hit bigint 序列命中缓存数。 父主题: 其他系统视图
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全