Azure SYNAPSE Analytics 'te adanmış SQL Havuzu (eski adıyla SQL DW) için tablo veri türleri

Bu makaleye dahil, adanmış SQL havuzunda tablo veri türlerini tanımlamaya yönelik önerilerdir.

Desteklenen veri türleri

Adanmış SQL Havuzu (eski adıyla SQL DW) en yaygın kullanılan veri türlerini destekler. Desteklenen veri türlerinin bir listesi için, bkz. CREATE TABLE deyimindeki veri türleri .

Satır uzunluğunu Küçült

Veri türlerinin boyutunu en aza indirmek, satır uzunluğunun kısaltaştırarak daha iyi sorgu performansına yol açar. Verileriniz için en küçük veri türünü kullanın.

  • Büyük bir varsayılan uzunluğa sahip karakter sütunları tanımlamaktan kaçının. Örneğin, en uzun değer 25 karakter ise sütununuzu VARCHAR (25) olarak tanımlayın.
  • Yalnızca VARCHAR gerektiren bir nvarchar kullanmaktan kaçının.
  • Mümkün olduğunda, NVARCHAR (MAX) veya VARCHAR (MAX) yerine NVARCHAR (4000) veya VARCHAR (8000) kullanın.

Tablolarınızı yüklemek için PolyBase dış tabloları kullanıyorsanız, tablo satırının tanımlanan uzunluğu 1 MB 'ı aşamaz. Değişken uzunluklu verileri olan bir satır 1 MB 'yi aştığında satırı BCP ile yükleyebilirsiniz ancak PolyBase ile birlikte kullanamazsınız.

Desteklenmeyen veri türlerini tanımla

Veritabanınızı başka bir SQL veritabanından geçiriyorsanız, adanmış SQL havuzunda desteklenmeyen veri türleri bulabilirsiniz. Mevcut SQL şemanızda desteklenmeyen veri türlerini saptamak için aşağıdaki sorguyu kullanın:

SELECT  t.[name], c.[name], c.[system_type_id], c.[user_type_id], y.[is_user_defined], y.[name]
FROM sys.tables  t
JOIN sys.columns c on t.[object_id]    = c.[object_id]
JOIN sys.types   y on c.[user_type_id] = y.[user_type_id]
WHERE y.[name] IN ('geography','geometry','hierarchyid','image','text','ntext','sql_variant','xml')
 AND  y.[is_user_defined] = 1;

Desteklenmeyen veri türleri için geçici çözümler

Aşağıdaki listede, adanmış SQL havuzunun (eski adıyla SQL DW) desteklemediği veri türleri ve desteklenmeyen veri türleri için yararlı alternatifler verilmiştir.

Desteklenmeyen veri türü Geçici çözüm
geometrisi ikili
Coğrafya ikili
hierarchyid nvarchar(4000)
görüntüyle ikili
metin varchar
n nvarchar
sql_variant Sütunu kesin olarak belirlenmiş birkaç sütuna Böl.
table Geçici tablolara Dönüştür.
ilişkin Datetime2 ve CURRENT_TIMESTAMP işlevini kullanmak için yeniden çalışma kodu. Varsayılan olarak yalnızca sabitler desteklenir, bu nedenle current_timestamp varsayılan kısıtlama olarak tanımlanamaz. Zaman damgası türünde bir sütundan satır sürümü değerlerini geçirmeniz gerekiyorsa, NULL veya NULL satır sürüm değerleri için BINARY(8) veya VARBINARY(8) kullanın.
'sini varchar
Kullanıcı tanımlı tür Mümkün olduğunda yerel veri türüne geri dönüştür.
Varsayılan değerler Varsayılan değerler yalnızca sabit değerleri ve sabitleri destekler.

Sonraki adımlar

Tablo geliştirme hakkında daha fazla bilgi için bkz. tabloya genel bakış.