Pemetaan Tipe Data untuk Penerbit Oracle

Berlaku untuk:SQL Server

Jenis data Oracle dan jenis data Microsoft SQL Server tidak selalu sama persis. Jika memungkinkan, jenis data yang cocok dipilih secara otomatis saat menerbitkan tabel Oracle. Jika pemetaan jenis data tunggal tidak jelas, pemetaan jenis data alternatif disediakan. Untuk informasi tentang cara memilih pemetaan alternatif, lihat bagian "Menentukan Pemetaan Jenis Data Alternatif" nanti dalam topik ini.

Tabel berikut ini memperlihatkan bagaimana tipe data dipetakan secara default antara Oracle dan SQL Server saat data dipindahkan dari Oracle Publisher ke Distributor SQL Server. Kolom Alternatif menunjukkan apakah pemetaan alternatif tersedia.

Jenis data Oracle Tipe data SQL Server Alternatif
BFILE VARBINARY(MAX) Ya
BLOB VARBINARY(MAX) Ya
CHAR([1-2000]) CHAR([1-2000]) Ya
CLOB VARCHAR(MAX) Ya
TANGGAL DATETIME Ya
FLOAT FLOAT No
FLOAT([1-53]) FLOAT([1-53]) No
FLOAT([54-126]) FLOAT No
INT NUMERIC(38) Ya
INTERVAL DATETIME Ya
LONG VARCHAR(MAX) Ya
RAW PANJANG GAMBAR Ya
NCHAR([1-1000]) NCHAR([1-1000]) No
NCLOB NVARCHAR(MAX) Ya
NUMBER FLOAT Ya
NUMBER([1-38]) NUMERIC([1-38]) No
NUMBER([0-38],[1-38]) NUMERIC([0-38],[1-38]) Ya
NVARCHAR2([1-2000]) NVARCHAR([1-2000]) No
RAW([1-2000]) VARBINARY([1-2000]) No
REAL FLOAT No
ROWID CHAR(18) No
TANDA WAKTU DATETIME Ya
TANDA WAKTU(0-7) DATETIME Ya
TANDA WAKTU(8-9) DATETIME Ya
TANDA WAKTU(0-7) DENGAN ZONA WAKTU VARCHAR(37) Ya
TANDA WAKTU(8-9) DENGAN ZONA WAKTU VARCHAR(37) No
TANDA WAKTU(0-7) DENGAN ZONA WAKTU LOKAL VARCHAR(37) Ya
TANDA WAKTU(8-9) DENGAN ZONA WAKTU LOKAL VARCHAR(37) No
UROWID CHAR(18) No
VARCHAR2([1-4000]) VARCHAR([1-4000]) Ya

Pertimbangan untuk Pemetaan Jenis Data

Ingatlah masalah jenis data berikut saat mereplikasi data dari database Oracle.

Tipe Data yang Tidak Didukung

Jenis data berikut tidak didukung; kolom yang memiliki tipe ini tidak dapat direplikasi:

  • Jenis objek

  • Jenis XML

  • Varrays

  • Tabel bersarang

  • Kolom yang menggunakan REF

Tipe Data DATE

Tanggal di SQL Server berkisar dari 1753 A.D. hingga 9999 A.D., sedangkan tanggal di Oracle berkisar dari 4712 SM hingga 4712 A.D. Jika kolom jenis DATE berisi nilai yang berada di luar rentang untuk SQL Server, pilih jenis data alternatif untuk kolom, yaitu VARCHAR(19).

Jenis FLOAT dan ANGKA

Skala dan presisi yang ditentukan selama pemetaan jenis data FLOAT dan NUMBER tergantung pada skala dan presisi yang ditentukan untuk kolom menggunakan jenis data dalam database Oracle. Presisi adalah jumlah digit dalam angka. Skala adalah jumlah digit di sebelah kanan titik desimal dalam angka. Misalnya, angka 123,45 memiliki presisi 5 dan skala 2.

Oracle memungkinkan angka didefinisikan dengan skala yang lebih besar dari presisi, seperti NUMBER(4,5), tetapi SQL Server memerlukan presisi untuk sama dengan atau lebih besar dari skala. Untuk memastikan tidak ada pemotongan data, jika skala lebih besar dari presisi di Oracle Publisher, presisi diatur sama dengan skala ketika jenis data dipetakan: NUMBER(4,5) akan dipetakan sebagai NUMERIC(5,5).

Catatan

Jika Anda tidak menentukan skala dan presisi untuk NUMBER, SQL Server default menggunakan skala maksimum (8) dan presisi (38). Kami menyarankan agar Anda mengatur skala dan presisi tertentu di Oracle untuk penyimpanan dan performa yang lebih baik saat data direplikasi.

Tipe Objek Besar

Oracle mendukung hingga 4 gigabyte (GB), sedangkan SQL Server mendukung hingga 2 GB. Data yang direplikasi di atas 2 GB dipotong.

Jika tabel Oracle menyertakan kolom BFILE, data untuk kolom disimpan dalam sistem file. Akun pengguna administratif replikasi harus diberikan akses ke direktori tempat data disimpan menggunakan sintaks berikut:

GRANT READ ON DIRECTORY <directory_name> TO <replication_administrative_user_schema>

Untuk informasi selengkapnya tentang jenis objek besar, lihat bagian "Pertimbangan untuk Objek Besar" dalam Pertimbangan dan Batasan Desain untuk Penerbit Oracle.

Menentukan Pemetaan Tipe Data Alternatif

Biasanya, pemetaan jenis data default sesuai, tetapi untuk banyak jenis data Oracle, Anda dapat memilih pemetaan jenis data dari sekumpulan pemetaan alternatif, daripada menggunakan default. Ada dua cara untuk menentukan pemetaan alternatif:

  • Ambil alih default berdasarkan per artikel menggunakan prosedur tersimpan atau Wizard Publikasi Baru.

  • Mengubah default secara global untuk semua artikel mendatang menggunakan prosedur tersimpan (default tidak diubah untuk artikel yang ada).

Untuk menentukan pemetaan tipe data alternatif, lihat Menentukan Pemetaan Tipe Data untuk Penerbit Oracle.

Lihat Juga

Mengonfigurasi Oracle Publisher
Pertimbangan dan Batasan Desain untuk Penerbit Oracle
Gambaran Umum Penerbitan Oracle