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