sql >> Databáze >  >> RDS >> Sqlserver

Zkontrolujte nastavení relace pomocí SESSIONPROPERTY() na serveru SQL Server

V SQL Server můžete použít SESSIONPROPERTY() funkci vrátit SET nastavení možností relace.

Jsou to věci jako vaše ANSI_NULLS nastavení, ANSI_PADDING , QUOTED_IDENTIFIER , atd.

Chcete-li to provést, jednoduše předáte požadovaný název nastavení funkci jako řetězec a zároveň vyberete funkci.

Příklad

Zde je příklad k demonstraci. V tomto příkladu zkontroluji ANSI_NULLS nastavení.

SELECT SESSIONPROPERTY ('ANSI_NULLS');

Výsledek:

1

Moje relace měla ANSI_NULLS nastavte na ON když jsem to spustil, takže výsledek byl 1 .

Pokud změním svůj ANSI_NULLS nastavení na OFF , dostávám jiný výsledek.

SET ANSI_NULLS OFF;
SELECT SESSIONPROPERTY ('ANSI_NULLS');

Výsledek:

0

Nula znamená OFF .

Argumenty

SESSIONPROPERTY() funkce přijímá následující argumenty.

Možnost Popis
ANSI_NULLS Určuje, zda se chování ISO rovná (= ) a nerovná se (<> ) proti hodnotám null.
ANSI_PADDING Ovládá způsob, jakým sloupec ukládá hodnoty kratší, než je definovaná velikost sloupce, a způsob, jakým sloupec ukládá hodnoty, které mají koncové mezery ve znakových a binárních datech.
ANSI_WARNINGS Určuje, zda se použije standardní chování ISO při zobrazování chybových zpráv nebo varování pro určité podmínky, včetně dělení nulou a aritmetického přetečení.
ARITHABORT Určuje, zda je dotaz ukončen, když během provádění dotazu dojde k přetečení nebo chybě dělení nulou.
CONCAT_NULL_YIELDS_ NULL Ovládá, zda jsou výsledky zřetězení považovány za hodnoty null nebo prázdné řetězce.
NUMERIC_ROUNDABORT Určuje, zda se při zaokrouhlení výrazu způsobí ztrátu přesnosti generují chybové zprávy a varování.
QUOTED_IDENTIFIER Uvádí, zda se mají dodržovat pravidla ISO o tom, jak používat uvozovky k oddělování identifikátorů a doslovných řetězců.

Všechny tyto vrátí buď 1 nebo 0 (s 1 znamená ON a 0 znamená OFF ).

Jakákoli jiná hodnota má za následek NULL se vrací.


  1. Jak mohu zařadit soubor ve formátu CSV pomocí SQLPLUS?

  2. Generování řady čísel v MySQL

  3. Nelze jednoduše použít název tabulky PostgreSQL (vztah neexistuje)

  4. Protože SQL Server nemá balíčky, co dělají programátoři, aby to obešli?