Aracılığıyla paylaş


En son SQL Server veritabanı altyapısı özellikleri 2008 R2 değiştirir.

Not

SQL Server 2008 R2 için, bu konuda listelenen içerikte değişiklik yapılmamıştır.

Bu konu en son değişiklikleri açıklar Veritabanı Altyapısı.Bu değişiklikler, uygulamalar, komut dosyalarını veya önceki sürümleri üzerinde temel işlevleri bozabilir. SQL Server.Yükseltme yaptığınızda, bu sorunlarla karşılaşabilirsiniz.Daha fazla bilgi için bkz: Yükseltme Danışmanı'nı kullanarak yükseltme için hazırlama.

Alfabe

Özellik

Açıklama

Yeni alfabe düzenlerinden

SQL Server 2008 Windows Server 2008 tarafından sağlanan alfabe ile tam hizalama olan yeni alfabe düzenlerinden tanıtır.Bu 80 yeni alfabe dilbilimsel doğruluğu iyileştirilmiştir ve tarafından belirtilen * _100 sürüm başvuruları.Sunucu veya veritabanı için yeni bir harmanlama seçin, harmanlama eski istemci sürücülerine sahip istemciler tarafından tanınmayabilir olduğunu unutmayın.Tanınmayan alfabe uygulamanın hata verir ve başarısız olmasına neden olabilir.Aşağıdaki çözümleri deneyin:

  • Böylece temel sistem alfabe güncelleştirilmiş istemci işletim sistemini yükseltin.

  • İstemci bilgisayarlarınızın, veritabanı istemci yazılımı yüklü varsa, veritabanı istemci yazılımı bir hizmet güncelleştirmesi uygulama göz önünde bulundurun.

  • Bir kod sayfa istemci üzerindeki eşleyen varolan bir harmanlama seçin.

Daha fazla bilgi için bkz: Ayarlama ve değiştirme harmanlamalar.

Ortak dil çalışma zamanı (clr)

Özellik

Açıklama

clr birleştirmeler

Ne zaman bir veritabanı yükseltme için SQL Server 2008, Microsoft.SqlServer.Types Yeni veri türlerini desteklemek için derleme otomatik olarak yüklenir.Yükseltme Danışmanı'nı kuralları algılamak herhangi bir kullanıcı türünü veya montajları ile çakışan adlar.Yükseltme Danışmanı'nı çakışan derleme ve ya da çakışan her türlü yeniden adlandırmak yeniden adlandırma veya iki bölümü adları kod, o zaten varolan kullanıcı tipine için önerilerde bulunabilir.

Veritabanı Yükseltme çakışan bir ada sahip bir kullanıcı derleme algılarsa, bunu otomatik olarak derlemeyi yeniden adlandırın ve şüpheli moduna veritabanı.

Yükseltme sırasında çakışan ada sahip bir kullanıcı türü varsa, hiçbir özel adımlar alınır.Yükseltmenin ardından, eski kullanıcı türünü hem yeni sistem türü yer alır.Kullanıcı türü yalnızca iki bölümü adları yoluyla kullanılabilir duruma geçer.

clr birleştirmeler

SQL Server 2008 yükler.net Framework 3.5 hangi kitaplıkları içinde genel derleme önbelleği (gac) güncelleştirmeleri SP1.Kayıtlı kitaplıklar desteklenmeyen durumunda bir SQL Server veritabanı, sizin SQL Server uygulama çalışmamaya yükselttikten sonra SQL Server 2008.Bu hizmet çünkü veya kitaplıklar GAC'ye yükseltme güncelleştirilmiyor derlemelerin içinde SQL Server.Derleme içinde her ikisi de varsa, bir SQL Server veritabanı ve GAC'de derlemenin iki kopyasını gerekir tam olarak eşleşir.Bunlar aynı, derleme tarafından kullanıldığında, bir hata ortaya çıkar SQL Server clr tümleştirme.Daha fazla bilgi için bkz: Desteklenen.net Framework kitaplıkları.

Veritabanınızı yükseltmeden sonra da hizmet veya derleme kopyasını yükseltmek, SQL Server veritabanlarında alter assembly deyim.Daha fazla bilgi için bkz: Bilgi Bankası makale 949080.

Desteklenmeyen kullanıyorsanız olup olmadığını algılamak için.net framework kitaplığı uygulamanızdaki veritabanınızdaki aşağıdaki sorguyu çalıştırın.

SELECT name FROM sys.assemblies WHERE clr_name LIKE '%publickeytoken=b03f5f7f11d50a3a,%';

clr yordamları

clr kullanıcı tanımlı işlevler, kullanıcı tanımlı toplamları veya kullanıcı tanımlı türler (UDTs) içinde kimliğe bürünme kullanılarak uygulamanız 6522 yükseltme yaptıktan sonra hata neden olabilir SQL Server 2008.

Aşağıdaki senaryolar, başarılı SQL Server 2005 ancak başarısız olarak SQL Server 2008.Her senaryo için çözümler sağlanır.

  1. clr kullanıcı tanımlı işlev, kullanıcı tanımlı toplu veya kimliğe bürünme kullanan udt yöntem parametre türüne sahip nvarchar(max), varchar(max), varbinary(max), ntext, text, image, ya da büyük bir udt ve sahip DataAccessKind.Read öznitelik olan yönteme bağlıdır.

    Bu sorunu gidermek için ekleme DataAccessKind.Read üzerindeki öznitelik yöntemderlemeniz derleme ve yordamı ve derleme karşılaşmadıysanız.

  2. Olan bir clr tablo değerli işlev bir Init kimliğe bürünme gerçekleştiren bir yöntem.

    Eklemek bu sorunu çözmek için DataAccessKind.Read üzerindeki öznitelik yöntemderlemeniz derleme ve yordamı ve derleme karşılaşmadıysanız.

  3. Olan bir clr tablo değerli işlev bir FillRow kimliğe bürünme gerçekleştiren bir yöntem.

    Bu sorunu gidermek için kimliğe bürünme gelen kaldırma FillRow yöntem.Dış kaynaklar kullanarak erişmek FillRow yöntem.Bunun yerine, dış kaynaklardan erişmek Init yöntem.

Dinamik yönetimi görünümleri

Görünüm

Açıklama

sys.dm_os_sys_info

Kaldırılan cpu_ticks_in_ms ve sqlserver_start_time_cpu_ticks sütunlar.

sys.dm_exec_query_resource_semaphores sys.dm_exec_query_memory_grants

The resource_semaphore_id column is not a unique ID in SQL Server 2008.Bu değişiklik, sorun giderme sorgu yürütme etkileyebilir.Daha fazla bilgi için bkz: sys.dm_exec_query_resource_semaphores (Transact-SQL).

Hataları ve olayları

Özellik

Açıklama

Oturum açma hataları

De SQL Server 2005, zaman kullanin yalnızca Windows kimlik doğrulama için yapılandırılmış bir sunucuya bağlanmak için kullanılan sql oturum açma 18452 hata döndürdüDe SQL Server 2008, hata: 18456 yerine döndü.

Showplan

Özellik

Açıklama

Showplan xml şeması

Yeni bir SeekPredicateNew öğesi eklenir Showplan xml şeması ve kapsayan xsd serisi (SqlPredicatesType) metne dönüştürülecek bir <xsd:choice> öğe.Bir veya daha fazla yerine SeekPredicate öğeleri, bir veya daha fazla SeekPredicateNew şimdi Showplan xml öğeleri görüntülenebilir.İki öğe birbirini dışlar.SeekPredicate Showplan xml şeması için geriye dönük uyumluluk; saklanır Ancak, planları oluşturulan sorgu SQL Server 2008 içerebilir SeekPredicateNew öğesi.Sadece almak için beklediğiniz uygulamaları SeekPredicate , alt ShowPlanXML/BatchSequence/toplu/ifadeler/StmtSimple/QueryPlan/RelOp/IndexScan/SeekPredicates düğüm başarısız olabilir SeekPredicate öğesi yok.Ya da beklediğiniz için uygulamayı yeniden SeekPredicate veya SeekPredicateNew öğesinde bu düğüm.Daha fazla bilgi için bkz: Sorgu işleme bölümlenmiş tablolar ve dizinler üzerinde geliştirmeler.

Showplan xml şeması

Yeni bir IndexKind öznitelik eklenir NesneTürü Showplan xml þemada karmaþýk tür.Kesinlikle doğrulama uygulamaları SQL Server karşı planları SQL Server 2005 şema will fail.

Transact-SQL

Özellik

Açıklama

ALTER_AUTHORIZATION_DATABASE ddl olay

De SQL Server 2005, ALTER_AUTHORIZATION_DATABASE ddl olay harekete, değer 'object' İade NesneTürü varlık türü güvenliği sağlanabilir bu olay için eventdata xml öğesi veri tanımlama dili (ddl) işlemi olan bir nesne.De SQL Server 2008, gerçek bir tür (örneğin, 'tablo' veya 'işlev') döndürdü.

DÖNÜŞTÜRME

DÖNÜŞTÜRME işlev geçersiz bir stil verilmezse, dönüştürme türü karakter veya karakter ikili ikili olduğunda bir hata döndürülür.Önceki sürümlerinde SQL Server, geçersiz Style küme için varsayılan stil için ikili karakter ve karakter ikili dönüşümleri.

Yürütme izin verme/grant/revoke derlemeleri üzerinde

execute izni verildiğinde, reddedildi, veya getirilemez derlemeler için iptal edildi.Bu izin, herhangi bir etkisi ve şimdi bir hata neden olur.Vermek, reddetme veya saklı yordamlar veya derleme yöntem yerine başvuru işlevleri üzerinde execute izni iptal etme.

Sistem türleri izinlerini REDDETME/grant/revoke

İzinleri olamaz verildiğinde, reddedildi veya sistem türleri için iptal edildi.Önceki sürümlerinde SQL Server, bu ifadeler başarılı ancak sahip hiçbir etkisi.De SQL Server 2008, bir hata döndürdü.

GÖRE GRUPLANDIR

group by yan tümce tümce tümceni içeremez bir alt sorgu gruba ait liste tarafından kullanılan bir ifade.Önceki sürümlerinde SQL Server, buna izin.De SQL Server 2008, 144 hata döndürüldü.

Örneğin, aşağıdaki kod sql Server 2005'te başarılı ve sql Server 2008'de başarısız.

DECLARE @Test TABLE(a int NOT NULL);
INSERT INTO @Test SELECT 1 union ALL SELECT 2;
SELECT COUNT(*) 
FROM @Test
GROUP BY CASE WHEN a IN (SELECT t.a FROM @Test AS t)
THEN 1 ELSE 0 
END;

output yan tümce tümce tümce

output yan tümce tümce tümce başvuru yapamazsınız FUNCTION davranışı engellemek için bir sütun bir görünüm veya satır içi tablo değerli işlev gelen zaman, sütun aşağıdaki yöntemlerden biriyle tanımlanır:

  • Alt sorgu.

  • Kullanıcı veya sistem veri erişimi gerçekleştiren ya da bu tür yapmak için kabul edilir bir kullanıcı tanımlı işlev.

  • Kullanıcı veya sistem veri erişimi gerçekleştiren kullanıcı tanımlı bir işlev, tanımında içeren hesaplanan sütun.

Zaman SQL Server Bu tür bir sütun algılar output yan tümce tümce tümcesinde hata 4186 ortaya çıkar.Daha fazla bilgi için bkz: MSSQLSERVER_4186.

output INTO yan tümce tümce

Hedef tablo çıkış halinde yan tümce tümce herhangi bir etkin Tetikleyiciler olamaz.

precompute rank Server -düzey seçeneği

Bu seçenek, desteklenen SQL Server 2008.Şu anda bu özelliği olabildiğince çabuk kullanan uygulamalar değiştirin.

readpast tablo İpucu

READ_COMMITTED_SNAPSHOT veritabanı seçeneği on olarak küme ve aşağıdaki koşullardan biri doğruysa readpast tablo ipucu belirtilemez:

  • işlem yalıtım düzey Okuma kaydedilmiş oturumdur.

  • READCOMMITTED tablo ipucu da sorguda belirtilen.

Bu gibi durumlarda readpast ipucu belirtmek için READCOMMITTED tablo ipucu varsa kaldırın ve READCOMMITTEDLOCK tablo ipucu sorguya dahil.

sp_helpuser

Döndürülür aşağıdaki sütun adları sonuç küme , sp_helpuser saklı yordam değişti.

Önceki sütun adıYeni sütun adı
GroupNameRoleName
Group_nameRole_name
Group_idRole_id
Users_in_groupUsers_in_role

Saydam veri şifrelemesi

Saydam veri şifrelemesi (tde) g/Ç sırasında gerçekleştirilen düzey: Sayfa yapısını belleğe şifresiz ve sayfa yazıldığında şifrelenmiş disk.Veritabanı dosyaları ve günlük dosyaları şifrelenir.Normal atlayan üçüncü taraf uygulamaları SQL Server sayfa (örneğin, veri veya günlük dosyaları doğrudan tarama), erişim düzeneği başarısız olacaktır, çünkü dosyalar. veriler şifrelenir tde bir veritabanı kullanırBu tür uygulamalar dışında verilerin şifresini çözmek için bir çözüm geliştirmek için pencere şifreleme API yararlanabileceğiniz SQL Server.

XQuery

Özellik

Açıklama

DateTime desteği

De SQL Server 2005, veri türleri xs:time, xs:date, ve xs:dateTime sahip saat dilimi desteği.Saat dilimi verileri utc saat dilimi için eşleştirilir.SQL Server 2008, aşağıdaki değişiklikleri elde edilen standart uyumlu davranış sağlar:

  • Saat dilimi olmayan değerleri doğrulanır.

  • Sağlanan timezone veya bir saat dilimi yokluğunda korunur.

  • Dahili depolama gösterimi değiştirilir.

  • Depolanan değerleri çözünürlüğü artar.

  • Negatif yıllık izin verilmedi.

Uygulamalar ve XQuery ifadeler yeni türü değerleri hesap için değiştirin.Daha fazla bilgi için bkz: Saat, tarih, datetime2 ve datetimeoffset veri türleri xml kullanma.

XQuery ve Xpath deyimleri

De SQL Server 2005, bir XQuery veya XPath adımlar ifade iki nokta üst üste ile başlayan (': ') izin verilir.Örneğin, aşağıdaki deyim adı test içerir (CTR02) içinde ile başlayan yol ifadebir iki nokta üst üste.

SELECT FileContext.query('for n$ in //CTR return <C>{data )(n$/:CTR02)} </C>) AS Files FROM dbo.MyTable;

De SQL Server 2008, çünkü xml standartları uymuyor Bu kullanım izni9341 Hata döndürülür.Önde gelen iki nokta üst üste kaldırmak veya test adına--Örneğin, (n$ / CTR02) için bir önek belirtin veya (n$ / p1:CTR02).

Bağlanma

Özellik

Açıklama

Bağlanmak için SQL Server Native Client kullanarak ssl

İle bağlanırken SQL Server Native Client, kullanan uygulamalar "server = kısaad; ŞİFRELEME gücü = true " Gevşek doğrulama yüzünden geçmişte tam olarak tam etki alanı adlarını (fqdn) ait olan konuları belirtin sertifika ile bağlanmış.sql Server 2008 R2, fqdn konularla ilgili sertifikaları zorlamakla güvenliği geliştirir.Gevşek doğrulama kullanan uygulamalar aşağıdaki eylemlerden birini gerçekleştirmeniz gerekir:

  • fqdn bağlantı kullanmak dize.

    • Bu seçenek, derlenmesine gerektirmez bağlantının sunucu anahtar sözcük dize uygulamasının dışında yapılandırılmış.

    • Bu seçenek, bağlantı dizeleri kodlanmış olan uygulamalar için çalışmaz.

    • Yansıtma veritabanı yansıtma Sunucu yanıtı basit bir adla bu yana kullanan uygulamalar için bu seçeneği çalışmıyor.

  • Kısaad fqdn için eşlemek için bir diğer ad ekler.

    • Bu seçenek, bağlantı dizeleri kodlanmış olan uygulamalar için bile çalışır.

    • Bu seçeneği, alınan yerine çalışma ortak adı için diğer ad oluşturan sağlayıcıları görünmüyor bu yana kullanan veritabanı ikizleme uygulamalar için çalışmaz.

  • Sahip bir sertifika kısaad için verilmiş.

    • Bu seçenek, tüm uygulamalar için çalışır.