这不是SQL开发人员所做的
那个
,这是数据库。
您可以使用*语法创建视图,但数据库将始终将其转换为完全限定的选择列表。
CREATE VIEW LOCS
AS select * from locations;
现在向DB询问DDL,您可以得到
CREATE OR REPLACE FORCE EDITIONABLE VIEW "HR"."LOCS" (
"LOCATION_ID",
"STREET_ADDRESS",
"POSTAL_CODE",
"CITY",
"STATE_PROVINCE",
"COUNTRY_ID"
) AS
SELECT
"LOCATION_ID",
"STREET_ADDRESS",
"POSTAL_CODE",
"CITY",
"STATE_PROVINCE",
"COUNTRY_ID"
FROM
locations;
视图是在运行时定义的,它将采用现有列列表,并假设您希望视图中的列名与从中提取这些列的基础对象中的列名相同。
从
Docs
-
视图创建时定义查询的扩展
已创建,Oracle数据库在顶级视图中展开任何通配符(*)
查询列列表。结果查询存储在数据中
词典所有子查询都保持不变。中的列名
扩展列列表用引号括起来,以说明
基本对象的列最初是
使用引号输入,并要求查询按语法进行
对的