-- packages/curriculum/sql/oracle/curriculum-create.sql -- -- @author Ola Hansson (ola@polyxena.net) -- @creation-date 2003-05-23 -- @cvs-id $Id: curriculum-create.sql,v 1.2 2003/06/03 10:48:45 olah Exp $ @ curriculum-curriculum-create.sql @ curriculum-element-create.sql @ curriculum-element-package-create.sql @ curriculum-curriculum-package-create.sql create table cu_user_element_map ( user_id integer constraint cu_user_element_map_user_id_nn not null constraint cu_user_element_map_user_id_fk references users on delete cascade, element_id integer constraint cu_user_element_map_elem_id_nn not null constraint cu_user_element_map_elem_id_fk references cu_elements on delete cascade, curriculum_id integer constraint cu_user_element_map_curr_id_nn not null constraint cu_user_element_map_curr_id_fk references cu_curriculums on delete cascade, package_id integer constraint cu_user_element_map_pack_id_nn not null constraint cu_user_element_map_pack_id_fk references apm_packages on delete cascade, completion_date date default sysdate constraint cu_user_element_map_comp_da_nn not null, constraint cu_user_element_map_pk primary key (user_id, element_id) ); comment on table cu_user_element_map is ' Keep track of which elements a particular user has seen so that we can check the element in the curriculum bar and mark it visited. '; comment on column cu_user_element_map.curriculum_id is ' We use this column mainly to be able to clear/uncheck a single curriculum bar in a package instance. '; comment on column cu_user_element_map.package_id is ' We use this column mainly to be able to clear/uncheck all the curriculum bars in a package instance. '; create table cu_user_curriculum_map ( user_id integer constraint cu_user_curr_map_user_id_nn not null constraint cu_user_curr_map_user_id_fk references users on delete cascade, curriculum_id integer constraint cu_user_curr_map_curr_id_nn not null constraint cu_user_curr_map_curr_id_fk references cu_curriculums on delete cascade, package_id integer constraint cu_user_curr_map_pack_id_nn not null constraint cu_user_curr_map_pack_id_fk references apm_packages on delete cascade, constraint cu_user_curriculum_map_pk primary key (user_id, curriculum_id) ); comment on table cu_user_curriculum_map is ' Tracks the curriculums the user does NOT want in his/her personal curriculum bar (if activated). When the user is newly registered (and no rows exist for the user in the map), all published curriculums will be dispayed. '; comment on column cu_user_curriculum_map.package_id is ' We use this column mainly to be able to add all the curriculums in a package instance to the user''s personalized bar (delete from cu_user_curriculum_map where user_id = :user_id and package_id = :package_id). ';