Aracılığıyla paylaş


SQL:url blob verileri kullanarak url başvuruları isteyen-kodla (xdr şeması)

Önemli notÖnemli

Bu konuda eski uygulamalar için bir referans olarak dahil edilir.Bu özelliği yok ileride geliştirme çalışmaları yapılacaktır.Bu özellik yeni geliştirme çalışması kullanmaktan kaçının.Bunun yerine, açıklama eklenmiş xsd şemaları, xml görünümlerini oluşturmak için kullanın.Daha fazla bilgi için bkz: Açıklama eklenmiş xsd şemaları (SQLxml 4.0) Giriº.xsd şemaları için varolan açıklama eklenmiş xdr şemalarını dönüştürebilirsiniz.Daha fazla bilgi için bkz: Açıklama eklenmiş xdr şemalarını eşdeğer xsd şemaları (SQLxml 4.0) dönüştürme.

Bir öznitelik (veya öğe) bir Microsoft eşlendiğinde açıklama eklenmiş xdr şeması içinde SQL Server blob sütun döndürülen veriler biçiminde Base 64 ile kodlanmış içinde xml.Açıklaması için SQL Server Bkz: veri türleri ve onların karşılık gelen xml veri türleri, Veri türü Coercions (xdr şeması).

(URI) verilere bir başvuru, daha sonra ikili biçimde blob verileri almak, belirlemek için kullanılabilecek döndürülecek isterseniz, sql:url-encode ek açıklama.

Specify sql:url-encode annotation to indicate that a URL to the field should be returned instead of the value of the field.sql:url-encode depends on the primary key to generate a singleton select in the URL.Birincil anahtar kullanılarak belirtilebilir sql:key-fields ek açıklama.Daha fazla bilgi için bkz: SQL:key anahtar sütunlar kullanma tanımlayan-alanları (SQLxml 4.0).

The sql:url-encode annotation takes a Boolean type value (0 = FALSE, 1 = TRUE).sql:url-encode cannot be used with sql:use-cdata or on any of the attribute types ID, IDREF, IDREFS, NMTOKEN, or NMTOKENS.

Örnekler

Aşağıdaki örnekler kullanarak çalışma örnekleri oluşturmak için belirli gereksinimleri karşılaması gerekir.Daha fazla bilgi için bkz: SQLxml örnekleri çalıştırma gereksinimleri.

A.SQL:URL belirtin-blob verileri için bir url başvurusu elde etmek için kodlama

Bu örnekte, eşleme şema belirtir sql:url-encode , LargePhoto URI başvurusu için (yerine biçiminde Base 64 ile kodlanmış ikili veri alınıyor) ürün fotoğraf almak için öznitelik.

<?xml version="1.0" ?>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
   xmlns:dt="urn:schemas-microsoft-com:datatypes"
   xmlns:sql="urn:schemas-microsoft-com:xml-sql">
   <ElementType name="ProductPhoto" sql:relation="Production.ProductPhoto" 
                 sql:key-fields="ProductPhotoID" >
      <AttributeType name="ProductPhotoID" />
      <AttributeType name="LargePhoto" />

      <attribute type="ProductPhotoID" />
      <attribute type="LargePhoto" sql:url-encode="1" />
   </ElementType>
</Schema>

Örnek XPath sorgusu şema karşı sınamak için

  1. Yukarıdaki şema kodu kopyalayın ve bir metin dosyasına yapıştırın.Dosyayı UrlEncodeXdr.xml kaydedin.

  2. Aşağıdaki şablon kopyalama ve bir metin dosyasına yapıştırın.Dosyayı UrlEncodeXdrT.xml UrlEncodeXdr.xml kaydettiğiniz aynı dizine kaydedin.

    <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
      <sql:xpath-query mapping-schema="UrlEncodeXdr.xml">
        /ProductPhoto[@ProductPhotoID=100]
      </sql:xpath-query>
    </ROOT>
    

    Dizin yol (UrlEncodeXdr.xml) eşleme şema şablonun kaydedileceği dizini ile ilişkili olduğu için belirtilen.Mutlak bir yol da, örneğin belirtilebilir:

    mapping-schema="C:\MyDir\UrlEncodeXdr.xml"
    
  3. Oluşturun ve sqlxml 4.0 sınama komut dosyası (Sqlxml4test.vbs) şablonu yürütmek için kullanın.

    Daha fazla bilgi için bkz: ado SQLxml yürütme kullanarak 4.0 sorgular.

Sonuç küme aşağıdadır:

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
  <ProductPhoto ProductPhotoID="100" LargePhoto="dbobject/Production.ProductPhoto[@ProductPhotoID="100"]/@LargePhoto"/>
</ROOT>

Ayrıca bkz.

Başvuru