SET ANSI_DEFAULTS (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)Titik akhir analitik SQL di Microsoft FabricWarehouse di Microsoft Fabric

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

Konvensi sintaks transact-SQL

Sintaks

Sintaks untuk SQL Server, kumpulan SQL tanpa server di Azure Synapse Analytics, Microsoft Fabric

SET ANSI_DEFAULTS { ON | OFF }

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

SET ANSI_DEFAULTS ON

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi 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 inisialisasi koneksi atau 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 SQLSet Koneksi Attr.

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, indeks yang difilter, dan tampilan terindeks, empat default ini (ANSI_NULLS, , ANSI_PADDINGANSI_WARNINGS, 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, indeks yang difilter, 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 terindeks, indeks yang difilter, dan indeks pada kolom komputasi, lihat Pertimbangan Saat Anda Menggunakan Pernyataan SET.

Driver ODBC Klien Asli SQL Server dan Penyedia OLE DB Klien Asli SQL Server 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)