Topik ini menjelaskan ruang lingkup konversi untuk modifikasi kendala, penghapusan, dan penambahan dalam operasi DDL ALTER TABLE selama migrasi data dari database Oracle ke tenant Oracle di OceanBase Database.
Sintaksis
constraint_clauses:
{ ADD { { out_of_line_constraint }...
| out_of_line_REF_constraint
}
| MODIFY { CONSTRAINT constraint_name
| PRIMARY KEY
| UNIQUE (column [, column ]...)
} constraint_state [ CASCADE ]
| RENAME CONSTRAINT old_name TO new_name
| { drop_constraint_clause }...
}
out_of_line_constraint:
[ CONSTRAINT constraint_name ]
{ UNIQUE (column [, column ]...)
| PRIMARY KEY (column [, column ]...)
| FOREIGN KEY (column [, column ]...) references_clause
| CHECK (condition)
} [ constraint_state ]
out_of_line_REF_constraint:
{ SCOPE FOR ({ ref_col | ref_attr })
IS [ schema. ] scope_table
| REF ({ ref_col | ref_attr }) WITH ROWID
| [ CONSTRAINT constraint_name ] FOREIGN KEY
( { ref_col [, ref_col ] | ref_attr [, ref_attr ] } ) references_clause
[ constraint_state ]
}
drop_constraint_clause:
(
DROP ( ( PRIMARY KEY
| UNIQUE "(" (column)... ")"
| CONSTRAINT constraint_name )
[ CASCADE ] [( KEEP | DROP ) INDEX ]
)
[ ONLINE ]
)Operasi yang didukung
Menghapus kendala dengan menentukan CONSTRAINT constraint_name dalam klausa drop_constraint_clause didukung. Hanya satu kendala yang dapat dihapus pada satu waktu. Contoh kode:
ALTER TABLE T DROP CONSTRAINT CST;Operasi yang tidak didukung
Menghapus kunci utama atau kunci unik tidak didukung. Kesalahan akan dikembalikan saat Anda melakukan operasi ini.
Menambahkan kendala baru tidak didukung. Kesalahan akan dikembalikan saat Anda melakukan operasi ini.
Memodifikasi kendala tidak didukung. Kesalahan akan dikembalikan saat Anda melakukan operasi ini.
Mengganti nama kendala tidak didukung. Kesalahan akan dikembalikan saat Anda melakukan operasi ini.
Klausa dan opsi yang diabaikan
Klausa dan opsi berikut akan diabaikan dan tidak akan diselesaikan atau dikonversi ketika ditentukan dalam pernyataan DDL yang disinkronkan.
Klausa CASCADE.
Klausa KEEP | DROP INDEX untuk menentukan apakah akan menyimpan atau menghapus indeks.
Opsi ONLINE untuk memungkinkan operasi DML tabel saat menghapus kendala.