views
Creates, updates, deletes, gets or lists a views
resource.
Overview
Name | views |
Type | Resource |
Id | snowflake.view.views |
Fields
Name | Datatype | Description |
---|---|---|
name | string | Name of the view |
columns | array | The columns of the view |
comment | string | user comment associated to an object in the dictionary |
created_on | string | Date and time when the view was created. |
database_name | string | Database in which the view is stored |
kind | string | Kind of the view, permanent (default) or temporary |
owner | string | Role that owns the view |
owner_role_type | string | The type of role that owns the view |
query | string | Query used to create the view |
recursive | boolean | Whether or not this view can refer to itself using recursive syntax withot requiring a CTE (common table expression) |
schema_name | string | Schema in which the view is stored |
secure | boolean | Whether or not this view is secure |
Methods
Name | Accessible by | Required Params | Description |
---|---|---|---|
fetch_view | SELECT | database_name, name, schema_name, endpoint | Fetch a view |
list_views | SELECT | database_name, schema_name, endpoint | List views |
create_view | INSERT | database_name, schema_name, data__columns, data__name, data__query, endpoint | Create a view |
delete_view | DELETE | database_name, name, schema_name, endpoint | Delete a view |
SELECT
examples
List views
SELECT
name,
columns,
comment,
created_on,
database_name,
kind,
owner,
owner_role_type,
query,
recursive,
schema_name,
secure
FROM snowflake.view.views
WHERE database_name = '{{ database_name }}'
AND schema_name = '{{ schema_name }}'
AND endpoint = '{{ endpoint }}';
INSERT
example
Use the following StackQL query and manifest file to create a new views
resource.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO snowflake.view.views (
data__name,
data__secure,
data__kind,
data__recursive,
data__columns,
data__comment,
data__query,
database_name,
schema_name,
endpoint
)
SELECT
'{{ name }}',
'{{ secure }}',
'{{ kind }}',
'{{ recursive }}',
'{{ columns }}',
'{{ comment }}',
'{{ query }}',
'{{ database_name }}',
'{{ schema_name }}',
'{{ endpoint }}'
;
/*+ create */
INSERT INTO snowflake.view.views (
data__name,
data__columns,
data__query,
database_name,
schema_name,
endpoint
)
SELECT
'{{ name }}',
'{{ columns }}',
'{{ query }}',
'{{ database_name }}',
'{{ schema_name }}',
'{{ endpoint }}'
;
- name: views
props:
- name: database_name
value: string
- name: schema_name
value: string
- name: data__columns
value: string
- name: data__name
value: string
- name: data__query
value: string
- name: endpoint
value: string
- name: name
value: string
- name: secure
value: boolean
- name: kind
value: string
- name: recursive
value: boolean
- name: columns
value: array
props:
- name: name
value: string
- name: comment
value: string
- name: comment
value: string
- name: query
value: string
DELETE
example
Deletes the specified views
resource.
/*+ delete */
DELETE FROM snowflake.view.views
WHERE database_name = '{{ database_name }}'
AND name = '{{ name }}'
AND schema_name = '{{ schema_name }}'
AND endpoint = '{{ endpoint }}';