Aracılığıyla paylaş


SQLxml 4.0 SP1 yenilikler nelerdir?

Microsoft sqlxml 4.0 SP1 çeşitli güncelleştirmeler ve geliştirmeler içerir.Bu konuda güncelleştirmelerini özetler ve uygun hallerde daha ayrıntılı bilgilere bağlantılar sağlar.sqlxml 4.0 SP1'de yeni veri türlerini desteklemek için ek geliştirmeler sağlar SQL Server 2008.Bu konu, aşağıdaki konuları içerir:

  • sqlxml 4.0 SP1'i yükleme

  • Yan yana yükleme sorunları

  • sqlxml 4.0 ve msxml

  • sqlxml 4.0 yeniden dağıtma

  • Destek SQL Server Native Client

  • ' De tanıtılan veri türleri için destek SQL Server 2005

  • sqlxml 4.0 için xml Bulk yükü değişiklikleri

  • sqlxml 4.0 için kayıt defteri anahtarı değişiklikleri

  • Geçiş sorunları

sqlxml 4.0 SP1'i yükleme

Önce SQL Server 2008, sqlxml 4.0 yayımlanmış olan sql Server ve tüm sql Server sürümleri dışındaki varsayılan yüklemesinin bir parçası oldusql Server Express. İle başlayan SQL Server 2008, sqlxml (sqlxml 4.0 SP1) en son sürüm artık ekinde sql Server.Kullanılabilir olduğunda, sqlxml 4.0 SP1'i yüklemek için buradan karşıdan sqlxml 4.0 SP1 yükleme konumu.

sqlxml 4.0 SP1 dosyaları aşağıdaki konuma yüklenir:

%PROGRAMFILES%\SQLXML 4.0\

Not

sqlxml 4.0 için tüm uygun kayıt defteri ayarlarını yükleme işleminin bir parçası yapılır.

Çalışan 64-bit sqlxml 4.0 SP1 32-bit sqlxml uygulamaları Windows altında Windows (WOW64) üzerinde 64-bit Windows işletim sistemlerinde çalıştırmak izin vermek için paket, Yükleme Merkezi'nde bulunan sqlxml4.msi adlı.

sqlxml 4.0 SP1'i kaldırma

Kayıt defteri anahtarlarını sqlxml 3.0 SP3, sqlxml 4.0 ve sqlxml 4.0 SP1 arasında mevcut paylaşılan.sqlxml sonraki sürümlerini aynı bilgisayarda sqlxml 3.0 SP3 içeren kaldırdıysanız sqlxml 3.0 SP3'ü yeniden yüklemeniz gerekebilir.

Yan yana yükleme sorunları

sqlxml 4.0 yükleme işlemini sqlxml önceki sürümleri tarafından yüklenmiş olan dosyaları kaldırmaz.Bu nedenle, bilgisayarınızda birkaç farklı farklı sürüm yüklemelerinde sqlxml DLL'leri olabilir.Yüklemeler-yan çalıştırabilirsiniz.sqlxml 4.0 sürüm bağımsız hem de sürümüne bağımlı bir ProgID içerir.Tüm üretim uygulamaları kullanması gereken sürüm-bağımlı ProgID'leri.

sqlxml 4.0 SP1 ve msxml

sqlxml 4.0, msxml yüklemez.sqlxml 4.0 kullanan bir parçası yüklenen msxml 6.0 SQL Server 2005 veya SQL Server 2008 yükleme.

sqlxml 4.0 SP1'i yeniden dağıtma

sqlxml 4.0 SP1 yeniden dağıtılabilir yükleyici kullanarak dağıtmak için paket.Ne kullanıcıya tek bir yükleme olarak görünüyor, birden çok paket yüklemek için bir bağlayıcı ve Önyükleyicisi teknolojisini kullanmak için yoludur.Daha fazla bilgi için bkz: Visual Studio 2005 için bir özel Önyükleyicisi paket yazma ve Özel Önkoşullar ekleme.

Uygulamanız bir platform üzerinde geliştirilmiş olan olandan başka hedefler, sqlncli.msi x 86 ve x 64 ve Itanium, için sürümleri Microsoft Yükleme Merkezi'nden yükleyebilirsiniz.

msxml 6.0 (msxml6.msi) için ayrı dağıtım yükleme programları da vardır.Bunlar bulunabilir SQL Server Yükleme CD'si aşağıdaki konumda:

%CD%\Setup\

Bu yükleme dosyaları doğrudan CD'den msxml 6. 0'ı yüklemek için kullanılabilir.msxml 6.0 sqlxml 4.0 SP1 ile birlikte kendi özel uygulamalarda serbestçe yeniden dağıtmak için de kullanılabilir.

Ayrıca yeniden dağıtan gerekecek SQL Server Native Client kullanıyorsanız, veri sağlayıcı uygulama.Daha fazla bilgi için bkz: SQL Server Native Client Yükleme.

sql Server yerel istemcisi için destek

sqlxml 4.0 hem sqloledb destekler ve SQL Server Native Client sağlayıcıları.Aynı sürüm kullanmanız önerilir SQL Server yerel istemci sağlayıcı ve SQL Server çünkü SQL Server Native Client gibi sunucu, sevk herhangi yeni veri türlerini desteklemek için geliştirilen Date, Time, DateTime2, ve dateTimeOffset veri türü SQL Server 2008 tarafından desteklenen ve SQL Server 2008 yerel istemci.

SQL ServerNative Client içinde sunulan bir veri erişim teknolojisi olan SQL Server 2005.Onu sqloledb sağlayıcısı ve sqlodbc sürücü bir yerel dinamik bağlantı kitaplığı (dll) ayrı ve Microsoft Data Access Components (mdac)'dan farklı olan yeni işlevler sağlarken aynı zamanda birleştirir.

SQL ServerYerel istemci yeni uygulamalar oluşturmak veya içinde sunulan özelliklerden yararlanmak için gereken varolan uygulamalar geliştirmek için kullanılabilecek SQL Server sqloledb ve MDAC sqlodbc tarafından desteklenmeyen ve Microsoft Windows.Örneğin, SQL Server yerel istemci kullanmak için for xml gibi istemci tarafı sqlxml özellikler için gerekli xml veri türü.Daha fazla bilgi için bkz: İstemci tarafı xml biçimlendirmesi (SQLxml 4.0), ado SQLxml yürütme kullanarak 4.0 sorgular, ve SQL Server 2008 R2'in yerel istemci programlama.

Not

sqlxml 4.0 sqlxml 3.0 tamamen geriye dönük uyumlu değildir.Bazı hata düzeltmeleri ve diğer işlevsel değişiklikler özellikle sqlxml ISAPI desteği'nin kaldırılması nedeniyle, sqlxml 4.0 ile IIS sanal dizinleri kullanamazsınız.Uygulamaların çoğu küçük değişiklikleri ile çalışabilir ancak bunları sqlxml 4.0 ile üretim içine koymadan önce sınamalısınız.

sql Server 2005 ve sql Server 2008'de sunulan veri türleri için destek

SQL Server 2005tanıtılan xml veri türü ve sqlxml 4.0 destekler xml veri türü.Daha fazla bilgi için bkz: xml veri türü desteği sqlxml 4.0.

Nasıl kullanılacağını gösteren örnekler için xml veri türü eşleme xml görünümlerini, toplu yükleme xml ya da xml Updategram'lar, yürütme, sqlxml içinde başvurmak için örnekler sağlanan aşağıdaki konular.

SQL Server 2008tanıtılan Date, Time, DateTime2, ve DateTimeOffset veri türü.sqlxml 4.0 SP1 birlikte kullanıldığında yerleşik skaler türleri olarak bu dört yeni veri türlerini etkinleştirmek SQL Server 2008 Yerel istemci ole db sağlayıcısı (SQLNCLI10), hangi gelir SQL Server 2008.

sqlxml 4.0 SP1 için xml Bulk yükü değişiklikleri

  • sqlxml 4.0 için SchemaGen taşma alan kullanarak oluşturulur xml veri türü.Daha fazla bilgi için bkz: sql Server xml Bulk Load nesne modeli.

  • Daha önce oluşturduysanız, Microsoft Visual Basic uygulamalarını ve size kullanmak istediğiniz sqlxml 4.0, derlemeniz gerekir, uygulama ile başvurusu için Xblkld4.dll.

  • Visual Basic Scripting Edition uygulamaları için kullanmak istediğiniz dll dosyasını kaydetmeniz gerekir.Belirtirseniz aşağıdaki örnekte, sürüm-bağımsız ProgID'leri uygulama son kayıtlı dll dosyası üzerinde bağlıdır:

    set objBulkLoad = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad") 
    

    Not

    sürüm-Bağımlı ProgID SQLXMLBulkLoad.SQLXMLBulkLoad.4.0 olur.

sqlxml 4.0 için kayıt defteri anahtarı değişiklikleri

sqlxml 4.0 içinde kayıt defteri anahtarlarını önceki sürümlerden şu şekilde değiştirildi:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXML4\TemplateCacheSize

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXML4\SchemaCacheSize

Bu anahtarları sqlxml 4.0 için etkili olmasını istiyorsanız, ayarları değiştirmeniz gerekir.

Buna ek olarak, aşağıdaki kayıt defteri anahtarlarını sqlxml 4.0 tanıtır:

  • HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Client\SQLXML4\ReportErrorsWithSQLInfo

    Varsayılan olarak, sqlxml 4.0 ole db tarafından sağlanan yerel hata bilgilerini verir ve SQL Server yerine, üst düzey bir sqlxml hatası (sqlxml önceki sürümlerinde durum olarak).Bu davranışı istemiyorsanız, dword türü bu kayıt defteri anahtarnın değeri olmalıdır küme 0 (varsayılan değer 1).

  • HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Client\SQLXML4\FORXML_GenerateGUIDBraces

    Varsayılan olarak, sql Server GUID değerlerini kapsayan parantezler olmadan sqlxml dönün.Kaşlı ayraçlarla döndürülen GUID değeri isterseniz (örneğin, {bazı GUID}), bu kayıt defteri anahtarnın değeri olmalıdır küme 1 (varsayılan: 0).

  • HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Client\SQLXML4\SQL2000CompatMode

    xml parser verileri yüklendiğinde, varsayılan olarak, xml 1.0 kurallarına göre beyaz boşluk normale döndü.Bu sonuçlar bazı verilerinizi beyaz boşluk karakterleri kaybına.Gönderilmesinin verileri aynı olsa da bu nedenle, verilerinizi metinsel gösterimini aynı ayrıştırma sonra olmayabilir.

    Beyaz boşluk karakterleri verileri tutmak seçebilirsiniz, bu anahtar kullanılmaya başlanmıştır.Bu kayıt defteri anahtar eklerseniz ve küme değeri 0, beyaz boşluk karakter (lf, cr ve sekme) xml öznitelik değerleri kodlanmış döndürülür.De durum öğesi değerleri, yalnızca cr kodlanmış döndürülür.

    Örneğin:

    CREATE TABLE T( Col1 int, Col2 nvarchar(100))
    GO
    -- Insert data with tab, line feed and carriage return).
    INSERT INTO T VALUES (1, 'This is a tab    . This is a line feed and CR 
     more text')
    GO
    -- Test this query (without the registry key).
    SELECT * FROM T 
    FOR XML AUTO
    -- This is the result (no encoding of special characters).
    <?xml version="1.0" encoding="utf-8" ?>
    <r>
      <T Col1="1" 
         Col2="This is a tab    . This is a line feed and CR 
     more text"/>
    </r>
    -- Now add registry key with value 0 and execute the query again.
    -- Note the encoding for carriage return, line-feed and tab in the attribute value.
    <?xml version="1.0" encoding="utf-8" ?>
    <r>
      <T Col1="1" 
         Col2="This is a tab &#x09;. This is a line feed and CR &#x0D;&#x0A; more text"/>
    </r>
    
    -- Update the query and specify ELEMENTS directive
    SELECT * FROM T
    FOR XML AUTO, ELEMENTS
    -- Only the carriage return is returned encoded.
    <?xml version="1.0" encoding="utf-8" ?>
    <r>
       <T>
          <Col1>1</Col1>
          <Col2>This is a tab    . This is a line feed and CR &#x0D;
     more text</Col2>
       </T>
    </r>
    

Geçiş sorunları

Eski sqlxml uygulamalarınızın sqlxml 4.0 geçiş etkileyebilir sorunlar şunlardır:

ado ve sqlxml 4.0 sorgular

sqlxml önceki sürümlerinde, IIS sanal dizinlerini ve sqlxml ISAPI filtresi kullanarak url tabanlı sorgu yürütme için destek sağlandı.sqlxml 4.0 kullanan uygulamalar için bu destek artık kullanılabilir değil.

Bunun yerine, sqlxml sorguları, şablonlar ve Updategram'lar sqlxml uzantıları için ActiveX Data Objects (Microsoft veri erişim bileşenleri (mdac) 2.6 ve sonrası ilk kez tanıtılan ado) kullanılarak çalıştırılır.

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

sqlxml 3.0 ISAPI ve sql Server 2005'te tanıtılan veri türleri için desteklenebilirlik

Geliştirilmiş veri yazmaya çözümünüzün gerektiriyorsa, sqlxml 4.0, ISAPI desteği kaldırılmış olduğundan, özellikleri kullanılmaya SQL Server 2005 gibi xml veri türü veya kullanıcı tanımlı veri türleri (UDTs) ve Web tabanlı erişim gerekir gibi başka bir çözümü kullanmak sqlxml yönetilen sınıflar veya başka bir http işleyicisi, gibi Yerel xml Web Hizmetleri için sql Server 2005.

Bu tür uzantılar gerektirmiyorsa, alternatif olarak, sqlxml 3.0 bağlanmak için kullanmaya devam edebilirsiniz SQL Server 2005 ve SQL Server 2008 yüklemeler.sqlxml 3.0 ISAPI desteği bu sonraki sürümleri karşı bir çözüm ancak desteklememekte veya tanımamaktadır xml veri türü veya udt destek sunulan yazın SQL Server 2005.

Geçici dosyalar için xml Bulk yükü güvenlik değişiklikleri

sqlxml 4.0 ve SQL Server 2005 veya SQL Server 2008, xml Bulk yükü dosya izinleri verilmiş kullanıcı yürütme toplu yükleme işlemi.Okuma ve yazma izinleri dosya sisteminden devralınır.Önceki sürümlerde sqlxml ve sql Server'ın, xml Bulk Load sqlxml altında değil güvenli ve herkes tarafından okunabilir olabilir geçici dosyalar oluşturur.

İstemci tarafı for xml için geçiş sorunları

Yürütme alt yapısı değişiklikleri yüzünden SQL Server 2005 ve SQL Server 2008 farklı değerler verebilirler meta veriler temel için for xml sorgu altında yürütüldü ise döndürülür çok tablo SQL Server 2000.Bu oluştuğu durumlarda, farklı çıktı, bağlı istemci tarafı for xml sorgu sonuçları biçimlendirmeye sahip olacaktır sürüm karşı sorguyu çalıştırın.

for xml sorgu yoksa Yürütülmüş döngüsünde kullanarak sqlxml 3.0 üzerinden bir xml veri türü sütun, sonuçlar veri olarak tam olarak entitized bir dize. geleceksqlxml 4.0 içinde SQL Server (SQLNCLI10) yerel istemci sağlayıcı olarak belirtilen veri döndürülür olarak xml.