SET ANSI_DEFAULTS (Transact-SQL)

Berlaku untuk: SQL Server (semua versi yang didukung) Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Mengontrol sekelompok pengaturan SQL Server yang secara kolektif menentukan beberapa perilaku standar ISO.

tautan topikIkon Konvensi Sintaks Transact-SQL

Sintaks

Sintaks untuk kumpulan SQL SQL Server dan tanpa server di Azure Synapse Analytics

SET ANSI_DEFAULTS { ON | OFF }

Sintaks untuk Azure Synapse Analytics and Analytics Platform System (PDW)

SET ANSI_DEFAULTS ON

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.

Keterangan

ANSI_DEFAULTS adalah pengaturan sisi server yang dapat mengaktifkan perilaku untuk semua koneksi klien. Klien biasanya meminta pengaturan pada koneksi atau inisialisasi sesi. Pengguna tidak boleh mengubah pengaturan server.
Untuk mengubah perilaku klien, pengguna harus menggunakan metode spesifik klien seperti SQL_COPT_SS_PRESERVE_CURSORS. Untuk informasi selengkapnya, lihat SQLSetConnectAttr.

Saat diaktifkan (AKTIF), opsi ini mengaktifkan pengaturan ISO berikut:

SET ANSI_NULLS

SET CURSOR_CLOSE_ON_COMMIT

SET ANSI_NULL_DFLT_OFF

SET IMPLICIT_TRANSACTIONS

SET ANSI_PADDING

SET QUOTED_IDENTIFIER

SET ANSI_PADDING

 

Bersama-sama, opsi SET standar ISO ini menentukan lingkungan pemrosesan kueri selama durasi sesi kerja pengguna, pemicu yang sedang berjalan, atau prosedur tersimpan. Namun, opsi SET ini tidak menyertakan semua opsi yang diperlukan untuk mematuhi standar ISO.

Saat berhadapan dengan indeks pada kolom komputasi dan tampilan terindeks, empat default ini (ANSI_NULLS, , ANSI_WARNINGSANSI_PADDING, dan QUOTED_IDENTIFIER) harus diatur ke AKTIF. Default ini adalah di antara tujuh opsi SET yang harus diberi nilai yang diperlukan saat Anda membuat dan mengubah indeks pada kolom komputasi dan tampilan terindeks. Opsi SET lainnya adalah ARITHABORT (AKTIF), CONCAT_NULL_YIELDS_NULL (AKTIF), dan NUMERIC_ROUNDABORT (NONAKTIF). Untuk informasi selengkapnya tentang pengaturan opsi SET yang diperlukan dengan tampilan dan indeks terindeks pada kolom komputasi, lihat Pertimbangan Saat Anda Menggunakan Pernyataan SET.

Driver SQL Server Native Client ODBC dan Penyedia OLE DB SQL Server Native Client untuk SQL Server secara otomatis mengatur ANSI_DEFAULTS ke AKTIF saat menyambungkan. Driver dan Penyedia kemudian mengatur CURSOR_CLOSE_ON_COMMIT dan IMPLICIT_TRANSACTIONS ke NONAKTIF. Pengaturan OFF untuk CURSOR_CLOSE_ON_COMMIT dan IMPLICIT_TRANSACTIONS dapat dikonfigurasi di sumber data ODBC, di atribut koneksi ODBC, atau di properti koneksi OLE DB yang diatur dalam aplikasi sebelum menyambungkan ke SQL Server. Default untuk ANSI_DEFAULTS adalah NONAKTIF untuk koneksi dari aplikasi DB-Library.

Saat SET ANSI_DEFAULTS dikeluarkan, QUOTED_IDENTIFIER diatur pada waktu penguraian, dan opsi berikut diatur pada waktu eksekusi:

SET ANSI_NULLS

SET ANSI_PADDING

SET ANSI_NULL_DFLT_OFF

SET CURSOR_CLOSE_ON_COMMIT

SET ANSI_PADDING

SET IMPLICIT_TRANSACTIONS

Izin

Memerlukan keanggotaan dalam peran publik .

Contoh

Contoh berikut mengatur ANSI_DEFAULTS ke AKTIF dan menggunakan DBCC USEROPTIONS pernyataan untuk menampilkan pengaturan yang terpengaruh.

-- SET ANSI_DEFAULTS ON.  
SET ANSI_DEFAULTS ON;  
GO  

-- Display the current settings.  
DBCC USEROPTIONS;  
GO 

-- SET ANSI_DEFAULTS OFF.  
SET ANSI_DEFAULTS OFF;  
GO  

Lihat juga

USEROPTIONS DBCC (Transact-SQL)
Pernyataan SET (Transact-SQL)
SET ANSI_NULL_DFLT_ON (Transact-SQL)
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)
SET CURSOR_CLOSE_ON_COMMIT (Transact-SQL)
SET IMPLICIT_TRANSACTIONS (Transact-SQL)
SET QUOTED_IDENTIFIER (Transact-SQL)