Sonuçları etkileyen seçeneklerini ayarlama

Görünümler ve hesaplanan sütunlar deposu sonuçlar daha sonra başvurmak için veritabanında dizinler dizin.Dizinli görünüme başvuran tüm yalnızca, geçerli bağlantıları saklı sonuçlar olur veya dizinlenmiş hesaplanmış bir sütun aynı üretebilir sonuçlar küme dizini oluşturulmuş bağlantı olarak.küme saklı sonuçlar doğru yönetilmesini ve tutarlı sonuçlar dönmek emin olmak için aşağıdaki seçenekleri tablo gösterilen değerlere ayarlanmalıdır gereken değeri bu koşullar gerçekleştiğinde sütunu:

  • Görünüm veya hesaplanan sütun üzerinde dizin oluşturulur.

  • hesaplanan sütun tanımlanan ve PERSISTED belirtilir.

  • INSERT, update veya delete işlemi depolanan veri değerlerini değiştirir dizinli görünüm veya dizinlenmiş hesaplanan sütun.bcp, dts, çoğaltma ve dağıtılmış sorgular gibi işlemleri de buna dahildir.

  • sorgu iyileştiricisi Sorgu yürütme planında dizini kullanır.

  • Görünüm oluşturulduğunda, çünkü bu iki ayar görünümü ile depolanır dizin oluşturulmuş görünümler için ANSI_NULLS ve QUOTED_IDENTIFIER seçenekleri on olarak küme olması gerekir meta veriler.

    Seçeneklerini ayarlama

    Gerekli değer

    Varsayılan sunucu değerini

    Default

    ole db ve odbc değer

    Default

    db Kitaplığı değer

    ANSI_NULLS

    ON

    KAPALI

    ON

    KAPALI

    ANSI_PADDING

    ON

    ON

    ON

    KAPALI

    ANSI_WARNINGS *

    ON

    KAPALI

    ON

    KAPALI

    ARITHABORT

    ON

    ON

    KAPALI

    KAPALI

    CONCAT_NULL_YIELDS_NULL

    ON

    KAPALI

    ON

    KAPALI

    NUMERIC_ROUNDABORT

    KAPALI

    KAPALI

    KAPALI

    KAPALI

    QUOTED_IDENTIFIER

    ON

    KAPALI

    ON

    KAPALI

    * Veritabanı uyumluluk düzey 90 veya daha yüksek olarak ayarlandığında ANSI_WARNINGS on olarak örtülü olarak ayarlanması ARITHABORT on olarak küme.Veritabanı uyumluluk düzey ise küme 80 veya daha önce ARITHABORT seçeneği açık olmalıdır küme açık.

küme seçenekleri yanlış ayarladığınızda, aşağıdakilerden bir veya birkaçını oluşabilir:

  • The Veritabanı Altyapısı generates an error and rolls back any INSERT, UPDATE, or DELETE statement that changes data values stored in the index.

  • sorgu iyileştiricisi Dizini herhangi yürütme planı dikkate almaz Transact-SQL deyim.

  • dizinli görünüm veya hesaplanan sütun oluşturulamaz.

ole db ve odbc bağlantıları için seçenek ayarlarını ayarla

Çoğu uygulama kullanır ya da ole db Provider for SQL Server veya SQL Server bağlanmak için odbc sürücüsü bir örnek , SQL Server gibi SQL Server Management Studio, Integration Services, çoğaltma ve toplu kopyalama işlemleri.ole db ve odbc varsayılan görünümler veya hesaplanmış sütunları dizinlerde için gerekli olan altı seçeneklerini ayarlama için doğru ayarlarıdır.ole db ve odbc için varsayılan değerleri, önceki görmek tablo.Bu ayarlar ISO standardına kuralların zorlamak ve önerilen ayarları SQL Server.Daha fazla bilgi için bkz: İstemci ağ yapılandırması.

Not

Bazıları SQL Server utilities birini veya daha fazlasını kapalı tutmak, önceki sürümleriyle uyumluluk için ANSI ayarlarını kümeyardımcı programlar.

c bağlantıları için db-Library ve katıştırılmış sql set seçenek ayarları

db Kitaplığı ve katıştırılmış sql c uygulamaları için Aksi halde, varsayılan olarak, küme oturum seçenekleri.Bu API'leri kullanan sistemler ya da uygulamaların uygun set ifadeleri veya veritabanı veya sunucu varsayılan değerlerini değiştirmek için doğru ayarları kodlamanız gerekir.

Öncelik seçeneklerini ayarlama

set seçenekleri on ya da off ayarlarını çeşitli düzeylerde belirtilebilir.Her oturum seçeneği için son ayar seçeneği ayarlar, en yüksek öncelikli işlem tarafından belirlenir.Önceliği aşağıdaki listeler oturum işlemleri, listenin en üstündeki yüksek etkileyen ayarlama:

  • Herhangi bir uygulama açıkça varsayılan ayarları KÜMESİ yürüterek kılabilirsiniz deyim sonra bir sunucuya bağlandı.set deyim, önceki tüm ayarları geçersiz kılar ve Seçenekler dinamik olarak uygulamanın çalıştırıldığı sırada açıp için kullanılabilir.Seçenek ayarları yalnızca geçerli bağlantı oturum için geçerlidir.

  • ole db ve odbc uygulamalarının etkin bağlantı seçeneği ayarlarını belirtebilirsiniz saat bağlantı dizelerinde seçenek ayarları belirterek.Seçenek ayarları yalnızca geçerli bağlantı oturum için geçerlidir.

  • set seçenekleri için belirtilen bir SQL Server Denetim Masası veya odbc odbc uygulaması kullanarak odbc veri kaynak SQLConfigDataSource işlev.

  • Bir veritabanı için varsayılan ayarlar.alter veritabanı veya nesne Gezgini'nde kullanarak bu değerleri belirtmek SQL Server Management Studio.

  • Bir sunucu için varsayılan ayarlar.Bu değerler kullanarak belirtmek sp_configure veya Object Explorer'da SQL Server Management Studio için küme adlı sunucu yapılandırma seçeneği kullanıcı seçenekleri.

Örneğin, odbc için varsayılan ANSI_NULLS on değerdir; Bu seçeneği kapalı bir odbc bağlantısı ayarlayarak bu değer ancak kılabilirsiniz dize veya veritabanına bağlandıktan sonra set seçenekleri kullanarak.

Saklı yordamları ve Tetikleyicileri

Dizinler üzerinde görünümler ve hesaplanan sütunlar desteklemek için gerekli olan altı seçeneklerini ayarlama çalışmak için saklı yordamları ve Tetikleyicileri yazılması gerekir.sorgu iyileştiricisi bir görünüm veya küme seçenekleri hatalı ayarlanırsa, saklı yordam veya tetikleyiciyi tarafından yürütülen select ifadelerine hesaplanan sütun üzerinde dizin kullanmaz.Bir INSERT, update veya delete deyim saklı yordam veya depolanan veri değerlerini değiştirir tetikleyici dizinli görünüm veya hesaplanmış bir sütun, bir hata üretir.

Dikkate Alınacak Noktalar

set deyim dinamik olarak oturum seçeneklerini değiştirebilirsiniz; Bu nedenle, set seçenekleri veritabanı verme dizinler görünümler üzerinde olan ve dizinlenmiş hesaplanmış sütunları dikkatle yapılması gerekiyor.Örneğin, bir uygulama içinde varsayılan ayarları bir dizinli görünüm veya dizinlenmiş hesaplanan sütun için başvurulacak izin bağlantı yapabilirsiniz; Geçersiz bir saklı yordam veya tetikleyici bir ilk deyim set ANSI_WARNINGS kapalı olan bağlantının aradığı, ancak, bu deyim önceki varsayılanları için veya ayarları ANSI_WARNINGS kılar.Bu durum, herhangi bir deyim saklı yordam veya tetikleyiciyi işler iyileştirici tüm dizin oluşturulmuş görünümler veya dizinlenmiş hesaplanmış sütunları yoksayar.

Diğer üç oturum seçenekleri olası sonuç kümeleri biçimini etkileyebilir: DATEFIRST VBLONGDATE ve dil.Tüm işlevleri whose sonuçlar tarafından etkilenen bu seçeneklerde yapılan değişiklikler belirleyici olarak sınıflandırılır ve dizin oluşturulmuş görünümler içinde kullanılan veya hesaplanmış sütunları dizine.