1 PACKAGE dbms_streams_tablespace_adm AUTHID CURRENT_USER IS
2
3 TYPE tablespace_set IS TABLE OF VARCHAR2(32) INDEX BY BINARY_INTEGER;
4
5 TYPE directory_object_set IS TABLE OF VARCHAR2(32) INDEX BY BINARY_INTEGER;
6
7 TYPE file IS RECORD(
8 directory_object VARCHAR2(32),
9 file_name VARCHAR2(4000));
10
11 TYPE file_set IS TABLE OF file INDEX BY BINARY_INTEGER;
12
13 directory_object_not_found EXCEPTION;
14 PRAGMA exception_init(directory_object_not_found, -23609);
15 dir_obj_not_found_num NUMBER := -23609;
16
17 file_converted_to_exists EXCEPTION;
18 PRAGMA exception_init(file_converted_to_exists, -23657);
19 file_converted_to_exists_num NUMBER := -23657;
20
21 internal_error EXCEPTION;
22 PRAGMA exception_init(internal_error, -23610);
23 internal_error_num NUMBER := -23610;
24
25 not_simple_tablespace EXCEPTION;
26 PRAGMA exception_init(not_simple_tablespace, -23611);
27 not_simple_tablespace_num NUMBER := -23611;
28
29 tablespace_not_found EXCEPTION;
30 PRAGMA exception_init(tablespace_not_found, -23612);
31 tablespace_not_found_num NUMBER := -23612;
32
33 tablespaces_in_target_db EXCEPTION;
34 PRAGMA exception_init(tablespaces_in_target_db, -23635);
35 tablespaces_in_target_db_num NUMBER := -23635;
36
37 invalid_tablespace_names EXCEPTION;
38 PRAGMA exception_init(invalid_tablespace_names, -23636);
39 invalid_tablespace_names_num NUMBER := -23636;
40
41 no_permissions_error EXCEPTION;
42 PRAGMA exception_init(no_permissions_error, -6564);
43 no_permissions_error_num NUMBER := -6564;
44
45 PROCEDURE detach_simple_tablespace(
46 tablespace_name IN VARCHAR2,
47 directory_object OUT VARCHAR2,
48 tablespace_file_name OUT VARCHAR2);
49
50 PROCEDURE clone_simple_tablespace(
51 tablespace_name IN VARCHAR2,
52 directory_object IN VARCHAR2,
53 destination_platform IN VARCHAR2 DEFAULT NULL,
54 tablespace_file_name OUT VARCHAR2);
55
56 PROCEDURE attach_simple_tablespace(
57 directory_object IN VARCHAR2,
58 tablespace_file_name IN VARCHAR2,
59 converted_file_name IN VARCHAR2 DEFAULT NULL,
60 datafile_platform IN VARCHAR2 DEFAULT NULL,
61 tablespace_name OUT VARCHAR2);
62
63 PROCEDURE pull_simple_tablespace(
64 tablespace_name IN VARCHAR2,
65 database_link IN VARCHAR2,
66 directory_object IN VARCHAR2 DEFAULT NULL,
67 conversion_extension IN VARCHAR2 DEFAULT NULL,
68 convert_directory_object IN VARCHAR2 DEFAULT NULL);
69
70 PROCEDURE detach_tablespaces(
71 datapump_job_name IN OUT VARCHAR2,
72 tablespace_names IN tablespace_set,
73 dump_file IN file,
74 log_file IN file DEFAULT NULL,
75 tablespace_files OUT file_set);
76
77 -- This version of detach_tablespace records the tablespace info in
78 -- the file group repository.
79 PROCEDURE detach_tablespaces(
80 tablespace_names IN tablespace_set,
81 export_directory_object IN VARCHAR2 DEFAULT NULL,
82 log_file_directory_object IN VARCHAR2 DEFAULT NULL,
83 file_group_name IN VARCHAR2,
84 version_name IN VARCHAR2 DEFAULT NULL,
85 repository_db_link IN VARCHAR2 DEFAULT NULL);
86
87 PROCEDURE clone_tablespaces(
88 datapump_job_name IN OUT VARCHAR2,
89 tablespace_names IN tablespace_set,
90 dump_file IN file,
91 tablespace_directory_objects IN directory_object_set,
92 destination_platform IN VARCHAR2 DEFAULT NULL,
93 log_file IN file DEFAULT NULL,
94 tablespace_files OUT file_set);
95
96 -- This version of clone_tablespace records the tablespace info in
97 -- the file group repository
98 PROCEDURE clone_tablespaces(
99 tablespace_names IN tablespace_set,
100 tablespace_directory_object IN VARCHAR2 DEFAULT NULL,
101 log_file_directory_object IN VARCHAR2 DEFAULT NULL,
102 file_group_name IN VARCHAR2,
103 version_name IN VARCHAR2 DEFAULT NULL,
104 repository_db_link IN VARCHAR2 DEFAULT NULL);
105
106 PROCEDURE attach_tablespaces(
107 datapump_job_name IN OUT VARCHAR2,
108 dump_file IN file,
109 tablespace_files IN file_set,
110 converted_files IN file_set,
111 datafiles_platform IN VARCHAR2 DEFAULT NULL,
112 log_file IN file DEFAULT NULL,
113 tablespace_names OUT tablespace_set);
114
115 -- This version of attach_tablespace plugs-in the specified version of
116 -- the tablespace(s) from the file group repository
117 PROCEDURE attach_tablespaces(
118 file_group_name IN VARCHAR2,
119 version_name IN VARCHAR2 DEFAULT NULL,
120 datafiles_directory_object IN VARCHAR2 DEFAULT NULL,
121 log_file_directory_object IN VARCHAR2 DEFAULT NULL,
122 repository_db_link IN VARCHAR2 DEFAULT NULL,
123 tablespace_names OUT tablespace_set);
124
125 -- Added convert_directory_object. This is the directory that should be
126 -- created at the source database. The file conversion will be done at
127 -- the source database.
128 PROCEDURE pull_tablespaces(
129 datapump_job_name IN OUT VARCHAR2,
130 database_link IN VARCHAR2,
131 tablespace_names IN tablespace_set,
132 tablespace_directory_objects IN directory_object_set,
133 log_file IN file,
134 conversion_extension IN VARCHAR2 DEFAULT NULL,
135 convert_directory_object IN VARCHAR2 DEFAULT NULL);
136
137 -- The following package variable is for internal use only.
138 "_trace_level" NUMBER;
139
140 END dbms_streams_tablespace_adm;