default

Romber

Database tables

romber_page.web_site_components

Purpose

This table provides a list of components for each web site. This information needs a data entry page. The components are placed together in the specified order to form a displayable page. Each component specifies an include file and/or text which forms part of the final content.

A web site component is accessed using its associated web site code and sequence number.

Definition

Source romber_web_site_components_tbl.sql

create table romber_page.web_site_components (
  page_component_include        romber_base.generic_include     not null,
  page_component_type_id        romber_page.component_type_id   not null,
  web_site_id                   romber_page.web_site_id         not null );

Constraints

Source romber_web_site_components_pk.sql

alter table romber_page.web_site_components
  add constraint romber_web_site_components_pk
    primary key (
      web_site_id,
      page_component_type_id );

Source romber_web_site_components_fk1.sql

alter table romber_page.web_site_components
  add constraint romber_web_site_components_fk1
    foreign key ( web_site_id )
    references romber_page.web_sites ( web_site_id );

Source romber_web_site_components_fk2.sql

alter table romber_page.web_site_components
  add constraint romber_web_site_components_fk2
    foreign key ( page_component_type_id )
    references romber_page.component_types ( page_component_type_id );

Load

Source romber_web_site_components_load.sql

insert into romber_page.web_site_components (
    page_component_include,
    page_component_type_id,
    web_site_id )
  values (
    'page_begin.inc',
    ( select page_component_type_id
        from romber_page.component_types
        where page_component_type_code = 'BEGIN' ),
    ( select web_site_id
        from romber_page.web_sites
        where web_site_code = 'ROMBER' ) );

insert into romber_page.web_site_components (
    page_component_include,
    page_component_type_id,
    web_site_id )
  values (
    'page_middle.inc',
    ( select page_component_type_id
        from romber_page.component_types
        where page_component_type_code = 'MIDDLE' ),
    ( select web_site_id
        from romber_page.web_sites
        where web_site_code = 'ROMBER' ) );

insert into romber_page.web_site_components (
    page_component_include,
    page_component_type_id,
    web_site_id )
  values (
    'page_end.inc',
    ( select page_component_type_id
        from romber_page.component_types
        where page_component_type_code = 'END' ),
    ( select web_site_id
        from romber_page.web_sites
        where web_site_code = 'ROMBER' ) );

Examples

Using views:

insert into romber_page.web_site_components (
    page_component_include,
    page_component_type_id,
    web_site_id,
  values (
    '/page_begin.inc',
    ( select page_component_type_id
	from romber_page.component_types
	where page_component_type_code = 'BEGIN' ),
    ( select web_site_id
	from romber_page.web_site_details
	where business_code = 'ROMBER'
	  and region_code = 'WORLD' ) );

Using only tables:

insert into romber_page.web_site_components (
    page_component_include,
    page_component_type_id,
    web_site_id )
  values (
    '/page_begin.inc',
    ( select page_component_type_id
	from romber_page.component_types
	where page_component_type_code = 'BEGIN' ),
    ( select web_site_id
	from romber_page.web_sites
	where web_site_code = 'ROMBER' ) );

 

Copyright © Corpita Pty Ltd 1987 - 2024

Developed by romber.net
Page modified on 28-Apr-2023