views

Creates derived views, interface views, and associations in Denodo 9.5 with verified VQL templates.

Updated Sep 4, 2026
One-click install
npx skills add https://github.com/kirivandubai/denodo_wipe_coading_skills --skill views-kirivandubai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: views
Source: https://github.com/kirivandubai/denodo_wipe_coading_skills/tree/main/skills/views
Command: npx skills add https://github.com/kirivandubai/denodo_wipe_coading_skills --skill views-kirivandubai

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Building views on top of existing Denodo views is risky because the server accepts DDL that silently breaks dependent objects: a replaced view invalidates everything above it, and SET IMPLEMENTATION never checks the schema. This Skill provides verified VQL templates and mandatory read-back checks so derived views, interface views, and associations actually work after creation. ## Core Features & Use Cases - Derived views: CREATE VIEW templates with correct clause order, join and aggregate guidance, grain-per-layer placement, and the SUM-over-int overflow fix (CAST to long). - Interface views: contract-first data products with SET IMPLEMENTATION, field mapping for renamed columns, and safe implementation swaps. - Associations: CREATE ASSOCIATION with REFERENTIAL CONSTRAINT, PRINCIPAL endpoints, multiplicities, mappings, and role preconditions. - Verification loop: GET_VIEWS invalid-only checks, GET_ASSOCIATIONS validity, USED_BY dependency scans, and SELECT-through-the-contract tests after every change. - Use Case: You are asked to build a mart of returns by store. The Skill guides you to place the join in the integration layer, the aggregate in business entities, cast the SUM input to long, and verify the mart's row counts reconcile with the source fact. ## Quick Start Ask the agent to create a derived view joining two existing base views in Denodo, or to expose an existing view as an interface-view data product.

Frequently Asked Questions about views

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a derived view in Denodo 9.5 with VQL?

Use CREATE OR REPLACE VIEW with clauses in this order: FOLDER, DESCRIPTION, PRIMARY KEY, TAGS, field properties, then AS SELECT. Place joins in the integration layer with an iv_ prefix and consumer-facing aggregates in the business entities layer.

How do I create an interface view in Denodo?

Use CREATE OR REPLACE INTERFACE VIEW with the field list first, then SET IMPLEMENTATION, then FOLDER and DESCRIPTION. Putting SET IMPLEMENTATION after FOLDER causes a syntax error. Always run a SELECT through the contract afterward because the server does not validate the implementation schema.

Why does my Denodo view fail on SELECT after being created successfully?

Denodo accepts DDL that breaks dependents silently. A replaced view that renames or drops a column invalidates every derived and interface view above it, and SET IMPLEMENTATION never checks schema compatibility. Check GET_VIEWS with input_retrieve_invalid_views_only = true and SELECT through each dependent.

Why does SUM return a wrong number in Denodo?

SUM over an int column accumulates in 32 bits and overflows past 2147483647, returning a wrong number with no error. Cast the input with SUM(CAST('long', x)) for int columns only; decimal and double measures need no cast.

What is the difference between VQL and SQL type names in Denodo?

Column declarations use VQL names (int, long, text) while CAST expressions use SQL names (integer, bigint, varchar). Using bigint in a field list or CAST(x AS int) both fail. The two-argument form CAST('int', x) accepts VQL names everywhere.

How do I create an association between two views in Denodo?

Use CREATE OR REPLACE ASSOCIATION with REFERENTIAL CONSTRAINT, two ENDPOINT clauses with role names and multiplicities like (0,*) or (1), one PRINCIPAL endpoint, and ADD MAPPING lines linking the key columns. Without REFERENTIAL CONSTRAINT, PRINCIPAL is silently ignored and clients see no foreign key.