-- Publisher : Create the Change Sources
BEGIN
DBMS_CDC_PUBLISH.CREATE_HOTLOG_CHANGE_SOURCE(
change_source_name => 'MAILING_LIST',
description => 'test source',
source_database => 'source_db');
END;
/
-- Publisher : Create Change Sets
BEGIN
DBMS_CDC_PUBLISH.CREATE_CHANGE_SET(
change_set_name => 'DAILY_MAILING_LIST',
description => 'change set for contact info',
change_source_name => 'MAILING_LIST',
stop_on_ddl => 'y');
END;
/
-- Publisher: Create the Change Tables
BEGIN
DBMS_CDC_PUBLISH.CREATE_CHANGE_TABLE(
owner => 'staging_streamspub',
change_table_name => 'contacts_ct',
change_set_name => 'DAILY_MAILING_LIST',
source_schema => 'SH',
source_table => 'CONTACTS',
column_type_list => 'PHONE_NUMBER NUMBER(10), CONTACT_NAME VARCHAR2(50),
ZIP_CODE NUMBER(5),
EMAIL_ADDRESS VARCHAR2(15), HOME_ADDRESS VARCHAR(20)',
capture_values => 'both',
rs_id => 'y',
row_id => 'n',
user_id => 'n',
timestamp => 'n',
object_id => 'n',
source_colmap => 'n',
target_colmap => 'y',
options_string => 'TABLESPACE TS_DAILY_MAILING_LIST');
END;
/
--Publisher: Enable the Change Source
BEGIN
DBMS_CDC_PUBLISH.ALTER_HOTLOG_CHANGE_SOURCE(
change_source_name => 'DAILY_MAILING_LIST',
enable_source => 'Y');
END;
/
Publisher: Grant Access to Subscribers
GRANT SELECT ON staging_cdcpub.products_ct TO subscriber1;