Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memahami pengaturan konversi Oracle ke Postgre SQL
Pengaturan SQL konversi Oracle ke Postgre dalam Konversi DMS Skema meliputi yang berikut:
-
AWS DMS dapat mengonversi tampilan terwujud Oracle menjadi tabel atau tampilan terwujud di Postgre. SQL Untuk tampilan Terwujud, pilih cara mengonversi tampilan terwujud sumber Anda.
-
Database Oracle sumber Anda dapat menggunakan
ROWID
pseudocolumn. Postgre SQL tidak mendukung fungsionalitas serupa. DMSKonversi Skema dapat meniruROWID
pseudocolumn dalam kode yang dikonversi menggunakan tipe data atau.bigint
character varying
Untuk melakukannya, pilih Gunakan tipe data bigint untuk meniru ROWID pseudocolumn atau Gunakan tipe data yang bervariasi karakter untuk meniru pseudocolumn untuk Row ID. ROWIDJika kode Oracle sumber Anda tidak menggunakan
ROWID
pseudocolumn, pilih Jangan buat. Dalam hal ini, kode yang dikonversi bekerja lebih cepat. -
Kode Oracle sumber Anda dapat menyertakan
TO_CHAR
,TO_DATE
, danTO_NUMBER
fungsi dengan parameter yang SQL tidak didukung Postgre. Secara default, Konversi DMS Skema mengemulasi penggunaan parameter ini dalam kode yang dikonversi.Anda dapat menggunakan Postgre asli SQL
TO_CHAR
,TO_DATE
, danTO_NUMBER
fungsi ketika kode Oracle sumber Anda tidak memiliki parameter yang tidak didukung oleh Postgre. SQL Dalam hal ini, kode yang dikonversi bekerja lebih cepat. Untuk melakukannya, pilih nilai berikut:Gunakan fungsi Postgre TO_ SQL asli CHAR
Gunakan fungsi Postgre TO_ SQL asli DATE
Gunakan fungsi Postgre TO_ SQL asli NUMBER
-
Database dan aplikasi Anda dapat berjalan di zona waktu yang berbeda. Secara default, Konversi DMS Skema mengemulasi zona waktu dalam kode yang dikonversi. Namun, Anda tidak memerlukan emulasi ini ketika database dan aplikasi Anda menggunakan zona waktu yang sama. Dalam hal ini, pilih Tingkatkan kinerja kode yang dikonversi di mana database dan aplikasi menggunakan zona waktu yang sama.
-
Untuk terus menggunakan urutan dalam kode yang dikonversi, pilih Isi urutan yang dikonversi dengan nilai terakhir yang dihasilkan di sisi sumber.
-
Dalam beberapa kasus, database Oracle sumber Anda mungkin hanya menyimpan nilai integer di kolom kunci primer atau asing dari tipe
NUMBER
data. Dalam kasus ini, AWS DMS dapat mengkonversi kolom ini ke tipeBIGINT
data. Pendekatan ini meningkatkan kinerja kode Anda yang dikonversi. Untuk melakukannya, pilih Mengkonversi kolom kunci primer dan asing dari tipe NUMBER data ke tipe BIGINT data. Pastikan sumber Anda tidak menyertakan nilai floating point di kolom ini untuk menghindari kehilangan data. -
Untuk melewati pemicu dan kendala yang dinonaktifkan dalam kode sumber Anda, pilih Konversi hanya pemicu dan kendala aktif.
-
Anda dapat menggunakan Konversi DMS Skema untuk mengonversi variabel string yang disebut dinamisSQL. Kode database Anda dapat mengubah nilai variabel string ini. Untuk memastikan bahwa AWS DMS selalu mengonversi nilai terbaru dari variabel string ini, pilih Konversi SQL kode dinamis yang dibuat dalam rutinitas yang disebut.
-
Postgre SQL versi 10 dan sebelumnya tidak mendukung prosedur. Jika Anda tidak terbiasa menggunakan prosedur di PostgreSQL, AWS DMS dapat mengonversi prosedur Oracle ke fungsi Postgre. SQL Untuk melakukannya, pilih Konversi prosedur ke fungsi.
-
Untuk melihat informasi tambahan tentang item tindakan yang terjadi, Anda dapat menambahkan fungsi tertentu ke paket ekstensi. Untuk melakukannya, pilih Tambahkan fungsi paket ekstensi yang meningkatkan pengecualian yang ditentukan pengguna. Kemudian pilih tingkat keparahan untuk meningkatkan pengecualian yang ditentukan pengguna. Pastikan Anda menerapkan skema paket ekstensi setelah mengonversi objek basis data sumber Anda. Untuk informasi selengkapnya tentang paket ekstensi, lihatMenggunakan paket ekstensi.
-
Database Oracle sumber Anda dapat menyertakan batasan dengan nama yang dibuat secara otomatis. Jika kode sumber Anda menggunakan nama-nama ini, pastikan Anda memilih Simpan nama kendala yang dihasilkan sistem. Jika kode sumber Anda menggunakan batasan ini, tetapi tidak menggunakan namanya, hapus opsi ini untuk meningkatkan kecepatan konversi.
-
Jika basis data sumber dan target Anda berjalan di zona waktu yang berbeda, fungsi yang mengemulasi fungsi Oracle
SYSDATE
bawaan mengembalikan nilai yang berbeda dibandingkan dengan fungsi sumber. Untuk memastikan bahwa fungsi sumber dan target Anda mengembalikan nilai yang sama, pilih Tetapkan zona waktu database sumber Anda. -
Anda dapat menggunakan fungsi dari ekstensi orafce dalam kode yang dikonversi. Untuk melakukannya, untuk rutinitas bawaan Orafce, pilih fungsi yang akan digunakan. Untuk informasi lebih lanjut tentang orafce, lihat orafce
di. GitHub