返回首页

gbase数据、南大通用产品文档:GBase8cCREATE VIEW

更新日期:2024年09月11日

功能描述
创建一个视图。视图与基本表不同,是一个虚拟的表。数据库中仅存放视图的定义,而
不存放视图对应的数据,这些数据仍存放在原来的基本表中。若基本表中的数据发生变化,
从视图中查询出的数据也随之改变。从这个意义上讲,
视图就像一个窗口,透过它可以看到
数据库中用户感兴趣的数据及变化。
注意事项
被授予CREATE ANY TABLE 权限的用户,可以在public 模式和用户模式下创建视图。
语法格式
CREATE [ OR REPLACE ] [ TEMP | TEMPORARY ] VIEW view_name [ ( column_name
[, ...] ) ]
[ WITH ( {view_option_name [= view_option_value]} [, ... ] ) ]
AS query;
说明:创建视图时使用WITH(security_barrier)可以创建一个相对安全的视图,避
免攻击者利用低成本函数的RAISE 语句打印出隐藏的基表数据。
参数说明

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
1091

OR REPLACE
如果视图已存在,则重新定义。

TEMP | TEMPORARY
创建临时视图。

view_name
要创建的视图名称。可以用模式修饰。
取值范围:字符串,符合标识符命名规范。

column_name
可选的名称列表,用作视图的字段名。如果没有给出,字段名取自查询中的字段名。
取值范围:字符串,符合标识符命名规范。

view_option_name [= view_option_value]
该子句为视图指定一个可选的参数。
目前view_option_name 支持的参数仅有security_barrier,
当VIEW 试图提供行级安全时,
应使用该参数。
取值范围:Boolean 类型,TRUE、FALSE

query
为视图提供行和列的SELECT 或VALUES 语句。
示例
--创建字段spcname 为pg_default 组成的视图。
gbase=#CREATE VIEW myView AS
SELECT * FROM pg_tablespace WHERE spcname = 'pg_default';
--查看视图。
gbase=#SELECT * FROM myView ;

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
1092
--删除视图myView。
gbase=#DROP VIEW myView;
相关命令
ALTER VIEW,DROP VIEW

onconfig.std 值

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 103 -

MAX_FILL_DATA_PAGES 0

0 或 1
单位
整数
生效
编辑 onconfig 文件并重启数据库服务器之后。
用法
设置 MAX_FILL_DATA_PAGES 值为 1 来允许在有变长行的表中每页插入更多的行。该设置
可减少磁盘空间,更有效地利用缓冲池,减少表扫描次数。
如果启用 MAX_FILL_DATA_PAGES,
则服务器将添加一个新行到最近更改的带着现有行的页,
如果添加该行留下了至少 10% 的空闲页用于在此页中所有行的未来扩展。如果未设置
MAX_FILL_DATA_PAGES,则服务器仅当页上有足够空间时才添加行,来允许新行增长到其最
大长度。
启用 MAX_FILL_DATA_PAGES 并允许每页更多的变长行可能带来问题,
就是服务器会以不同
的物理顺序存储这些行。而且,当页填满时,对一行中可变长列的更新可能导致行扩展,
以致于在页上不再完全适合。这导致服务器将该行分裂到两个页上,增加该行的访问时间。

要利用这个设置,随着进一步插入,必须重新加载带可变长行的现有的表或必须更改现有
的页。

15:17:39
all