İKİLİ BASE64 seçeneğini kullanın
BINARY BASE64 seçeneği sorguda belirtilen, ikili veri base64 kodlama biçiminde döndürülür. BINARY BASE64 seçeneği belirtilmemişse, varsayılan olarak, ikili verileri url kodlaması auto modu destekler. Yani ikili veriler yerine, göreli bir url sorgu nerede yürütüldü veritabanı sanal kök dizini için bir başvuru döndürülür. Bu başvuru, sonraki işlemler fiili ikili veri sqlxml ISAPI dbobject sorgu kullanarak erişmek için kullanılabilir. Sorgu görüntü tanımlamak için birincil anahtar sütunları gibi yeterli bilgi sağlamanız gerekir.
İkili görünüm, sütun için bir diğer ad kullanılırsa sorgu belirtme de diğer URL'yi döndürülen ikil veri kodlama. Sonraki işlemler, diğer anlamsız ve görüntü almak üzere, url kodlama kullanılamaz. Bu nedenle, diğer ad for xml auto modu kullanarak görünümü sorgularken kullanmayın.
İlişkili tablo adı ve sütun adı kaybeder, bir select sorgusu herhangi bir sütun için bir büyük ikili nesne (blob) döküm, o geçici bir varlık sağlar. Bu değer xml hiyerarşisi içinde nereye bilmiyor çünkü bu hata üretmek auto modu sorguları neden olur. Örneğin:
CREATE TABLE MyTable (Col1 int PRIMARY KEY, Col2 binary)
INSERT INTO MyTable VALUES (1, 0x7);
Bu sorgu, döküm için bir büyük ikili nesne (blob) nedeniyle bir hata üretir:
SELECT Col1,
CAST(Col2 as image) as Col2
FROM MyTable
FOR XML AUTO;
BINARY BASE64 seçeneği için for xml yan tümcesi eklemek için çözümdür. Döküm kaldırırsanız, sorgu, beklendiği gibi sonuçlar üretir.
SELECT Col1,
CAST(Col2 as image) as Col2
FROM MyTable
FOR XML AUTO, BINARY BASE64;
Sonuç şudur:
<MyTable Col1="1" Col2="Bw==" />