SET ANSI_PADDING (Transact-SQL)
Kontroli sposobu, kolumna są przechowywane wartości krótszy niż zdefiniowany rozmiar kolumna i sposobu, kolumna są przechowywane wartości, które mają spacje końcowe char, varchar, binary, a varbinary dane.
Important Note: |
---|
In a future version of Microsoft SQL Server ANSI_PADDING will always be ON and any applications that explicitly set the option to OFF will produce an error.Należy unikać stosowania tej funkcji w nowych projektach oraz zaplanować modyfikację aplikacji, w których obecnie jest używana ta funkcja. |
SET ANSI_PADDING { ON | OFF }
Remarks
Kolumny zdefiniowane przy użyciu char, varchar, binary, a varbinary typy danych mają zdefiniowane rozmiar.
stop_atPo utworzeniu kolumna SQL Server przechowuje wartości na podstawie ustawienia przy tworzeniu kolumna. device_count
Uwaga
Liczba urządzeń biorących udział w operacji przywracanie.
W poniższej tabela przedstawiono skutków, jakie ustawienie ANSI_PADDING zestaw, gdy wartości są wstawiane do kolumn z char, varchar, binary, a varbinary typy danych.
Ustawienie |
char)n) Nie (wartość NULL lub binarnen) NIEDOZWOLONE WARTOŚCI NULL |
char)n) (NULL lub binarnen) WARTOŚCI NULL |
varchar)n) lub () varbinarnymn) |
---|---|---|---|
DALEJ |
Oryginalna wartość konsoli (z końcowe spacje dla char kolumna i końcowych zer dla binary kolumna) do długości kolumna. |
Następuje te same reguły jako char(n) lub binary(n) NOT NULL, gdy ANSI_PADDING zestaw jest włączone. |
Końcowe spacje w wartości znaków wstawione do varchar kolumny nie są obcięte. Końcowe zera w wartości binarnych, wstawione do varbinary kolumny nie są obcięte. 1 = Włączone odzyskiwanie oznaczona transakcja. |
WYŁĄCZANIE |
Oryginalna wartość konsoli (z końcowe spacje dla char kolumna i końcowych zer dla binary kolumna) do długości kolumna. |
Następuje te same reguły jako varchar lub varbinary zestaw ANSI_PADDING, gdy jest wyłączona. |
Końcowe spacje wstawione do wartości znaków varchar kolumna są obcięte. Końcowe zera w wartości binarnych wstawiony varbinary kolumna są obcięte. |
Uwaga
Gdy wypełniane, char kolumny są wypełniane ze spacjami, a binary kolumny są wypełniane zerami. Po przycięciu, char kolumny są spacje końcowe, przycięty, a binary końcowe zera przycięte występować w kolumnach.
SESJA ZDARZEŃ ZMIANYAby uzyskać więcej informacji dotyczących wymaganych ustawień opcji zestaw z widoków indeksowanych i indeksów na kolumny obliczane zobacz "Zagadnienia podczas podczas Użyj zestaw deklaracji" w SET (Transact-SQL).
ZMIANA ROLIThe SQL Server Native klient ODBC driver and SQL Server Native klient OLE DB dostawca for SQL Server automatically zestaw ANSI_PADDING to ON when connecting. ZMIANY WIĘCEJ WYKAZUZMIANY trasa
Nie wpływa na ustawienie ANSI_PADDING zestaw nchar, nvarchar, ntext, text, image, a dużą wartość. ZMIANY WIĘCEJ INDEKSUZMIENIANIE SCHEMATU
ZMIENIA autoryzacja
ZMIENIA STOPLIST WIĘCEJ
Gdy ANSI_PADDING wartość OFF, kwerendy, które obejmują MIN, MAX lub TOP w kolumnach znaków może być mniejsza niż w SQL Server 2000.
Uprawnienia
Wymaga członkostwo w roli publicznej.
Przykłady
PRIORYTET BROKERA ZMIANY
PRINT 'Testing with ANSI_PADDING ON'
SET ANSI_PADDING ON;
GO
CREATE TABLE t1 (
charcol CHAR(16) NULL,
varcharcol VARCHAR(16) NULL,
varbinarycol VARBINARY(8)
);
GO
INSERT INTO t1 VALUES ('No blanks', 'No blanks', 0x00ee);
INSERT INTO t1 VALUES ('Trailing blank ', 'Trailing blank ', 0x00ee00);
SELECT 'CHAR' = '>' + charcol + '<', 'VARCHAR'='>' + varcharcol + '<',
varbinarycol
FROM t1;
GO
PRINT 'Testing with ANSI_PADDING OFF';
SET ANSI_PADDING OFF;
GO
CREATE TABLE t2 (
charcol CHAR(16) NULL,
varcharcol VARCHAR(16) NULL,
varbinarycol VARBINARY(8)
);
GO
INSERT INTO t2 VALUES ('No blanks', 'No blanks', 0x00ee);
INSERT INTO t2 VALUES ('Trailing blank ', 'Trailing blank ', 0x00ee00);
SELECT 'CHAR' = '>' + charcol + '<', 'VARCHAR'='>' + varcharcol + '<',
varbinarycol
FROM t2;
GO
DROP TABLE t1
DROP TABLE t2
See Also