【YashanDB知识库】如何输入小写表名的函数参数

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7863050.html?templateId=1718516

背景

YashanDB创建表用的是小写做为表名,对函数参数有表名,要如何输入小写表名。

解决方法

以收集统计信息为例

1、对交互式的客户端,如:yasql、YDC(YashanDB Developer Center)

在单引号下加双引号限定为小写,

EXEC DBMS_STATS.GATHER_TABLE_STATS('SYS', '"t_lower"', '', 1, FALSE, 'FOR ALL COLUMNS SIZE AUTO', 4, 'AUTO', TRUE);

2、非交互式命令,如: yasql sys/密码 -c "SQL命令"

除了加双引号限定还需要加反斜杆进行转义

yasql sys/密码 -c "EXEC DBMS_STATS.GATHER_TABLE_STATS('SYS', '\"t_lower\"', '', 1, FALSE, 'FOR ALL COLUMNS SIZE AUTO', 4, 'AUTO', TRUE)"

详细案例

create table "t_lower" (a int, "b" char(10)); --

insert into "t_lower" values(1,'aaa');

commit;

EXEC DBMS_STATS.GATHER_TABLE_STATS('SYS', '"t_lower"', '', 1, FALSE, 'FOR ALL COLUMNS SIZE AUTO', 4, 'AUTO', TRUE); -- 收集小写表名统计信息

select table_name, last_analyzed from dba_tables where owner='SYS' and lower(table_name)='t_lower'; -- 查询收集结果

非交互式命令:

yasql sys/密码 -c "EXEC DBMS_STATS.GATHER_TABLE_STATS('SYS', '\"t_lower\"', '', 1, FALSE, 'FOR ALL COLUMNS SIZE AUTO', 4, 'AUTO', TRUE)"

posted @ 2025-01-09 19:07  YashanDB  阅读(15)  评论(0)    收藏  举报