Aracılığıyla paylaş


Oracle yayımcılar için veri türü eşleştirme

Oracle data types and Microsoft SQL Server data types do not always match exactly.Mümkün olan yerlerde, Oracle tablo yayımlarken eşleşen veri türünü otomatik olarak seçilir.Durumlarda tek veri eşleme türü NET değildir, alternatif veri türü eşlemeleri sağlanır."Belirterek alternatif veri türü eşlemeleri" alternatif eşlemeleri seçme hakkında daha fazla bilgi için bkz: daha sonra bu bölümde.

Aşağıdaki tablo veri türleri Oracle arasındaki varsayılan olarak nasıl eşleştirildikleri gösterilmiştir ve SQL Server ne zaman veri taşındığı için Oracle Yayımcı dan SQL Server dağıtıcı.Alternatifler sütun alternatif eşlemeleri kullanılabilir olup olmadığını gösterir.

Oracle veri türü

sql Server veri türü

Alternatifleri

BDOSYA

VARBINARY(MAX)

Evet

BLOB

VARBINARY(MAX)

Evet

CHAR([1-2000])

CHAR([1-2000])

Evet

CLOB

VARCHAR(MAX)

Evet

DATE

DATETIME

Evet

FLOAT

FLOAT

Hayır

FLOAT([1-53])

FLOAT([1-53])

Hayır

FLOAT([54-126])

FLOAT

Hayır

INT

NUMERIC(38)

Evet

ARALIĞI

DATETIME

Evet

UZUN

VARCHAR(MAX)

Evet

UZUN HAM

GÖRÜNTÜ

Evet

NCHAR([1-1000])

NCHAR([1-1000])

Hayır

NCLOB

NVARCHAR(MAX)

Evet

SAYI

FLOAT

Evet

NUMBER([1-38])

NUMERIC([1-38])

Hayır

NUMBER([0-38],[1-38])

NUMERIC([0-38],[1-38])

Evet

NVARCHAR2([1-2000])

NVARCHAR([1-2000])

Hayır

RAW([1-2000])

VARBINARY([1-2000])

Hayır

GERÇEK

FLOAT

Hayır

SATIR KİMLİĞİ

CHAR(18)

Hayır

ZAMAN DAMGASI

DATETIME

Evet

TIMESTAMP(0-7)

DATETIME

Evet

TIMESTAMP(8-9)

DATETIME

Evet

SAAT DİLİMİ İLE TIMESTAMP(0-7)

VARCHAR(37)

Evet

SAAT DİLİMİ İLE TIMESTAMP(8-9)

VARCHAR(37)

Hayır

TIMESTAMP(0-7) İLE YEREL SAAT DİLİMİ

VARCHAR(37)

Evet

TIMESTAMP(8-9) İLE YEREL SAAT DİLİMİ

VARCHAR(37)

Hayır

UROWID

CHAR(18)

Hayır

VARCHAR2([1-4000])

VARCHAR([1-4000])

Evet

Veri türü eşlemesi için dikkat edilmesi gereken noktalar

Aşağıdaki veri türü sorunları Oracle veritabanından veri çoğaltma yapılırken göz önünde bulundurun.

Desteklenmeyen veri türleri

Aşağıdaki veri türleri desteklenir; Bu türü olan sütunlar yinelenemez:

  • Nesne türleri

  • xml türleri

  • Varrays

  • İç içe geçmiş tablolar

  • ref kullanın sütunlar

date veri türü

Dates in SQL Server range from 1753 A.D.to 9999 A.D., whereas dates in Oracle range from 4712 B.C.to 4712 A.D.Sütun türü tarih dışında değerler içeriyorsa, aralık için sql Server, varchar(19) ise sütun için alternatif veri türünü seçin.

Kayan noktalı sayı ve numara türleri

Ölçek ve float ve sayı veri türü eşleme sırasında belirtilen duyarlılık bağlıdır ölçeğini ve duyarlılığını için belirtilen üzerine sütun Oracle veritabanında veri türünü kullanarak.Precision birkaç basamak sayısıdır.Ölçek, bir sayı ondalık virgülün sağındaki basamak sayısıdır.Örneğin, 123.45 sayısı 5 bir duyarlık ve ölçeği 2 vardır.

Oracle sayıların Duyarlığı, number(4,5) gibi büyük ölçekli tanımlanması izin verir, ancak 'denSQL Server büyük veya eşit olması için duyarlılık gerektirirölçeği. Veri türü eşlenen ölçek duyarlılık Oracle Yayımcı adresindeki büyükse hiçbir veri kesilmesi olduğundan emin olmak için duyarlılık ölçeği için küme: number(4,5) NUMERIC(5,5) eşlenmesi.

Not

Ölçeğini ve duyarlılığını, numarası belirtmezseniz, SQL Server en büyük ölçek (8) ve duyarlık (38) kullanarak varsayılan.Öneririz, küme belirli ölçek ve Oracle kesinlik daha iyi depolama ve veri çoğaltıldığında, performans.

Büyük nesne türleri

Oracle, sql Server 2 GB'a kadar destekler, ancak en çok 4 gigabayt (gb) destekler.2 gb çoğaltılan veriler kesildi.

Oracle tablo BDOSYA sütun içeriyorsa, sütun için veri dosya sisteminde depolanır.Çoğaltma yönetimsel kullanıcı hesabı aşağıdaki sözdizimini kullanarak verilerin saklanacağı dizin için erişim verilmelidir:

GRANT READ ON DIRECTORY <directory_name> TO <replication_administrative_user_schema>

Büyük nesne türleri hakkında daha fazla bilgi için bkz: "Dikkat edilmesi gereken noktalar için büyük nesneleri" bölümü in Tasarım konuları ve Oracle yayımcılar için sınırlamalar.

Alternatif veri türü eşleştirmeleri belirtme

Genellikle, varsayılan veri türü eşleme uygun olduğu halde birçok Oracle veri türü için bir alternatif eşlemeleri küme eşleme yerine, varsayılan bir veri türü seçin.Alternatif eşlemeleri belirtmek için iki yol vardır:

  • Saklı yordamlar veya yeni yayın Sihirbazı'nı kullanarak bir makale başına temelinde Varsayılanı geçersiz kılar.

  • Genel olarak tüm gelecek makaleler (Varolan makaleler için varsayılanları değiştirilmez) saklı yordamları kullanmak için varsayılan değiştirin.

Alternatif veri türü eşlemeleri belirtmek için