sys.columns (Transact-SQL)
Berlaku untuk:
SQL Server (semua versi yang didukung)
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics Analytics
Platform System (PDW)
Mengembalikan baris untuk setiap kolom objek yang memiliki kolom, seperti tampilan atau tabel. Berikut ini adalah daftar jenis objek yang memiliki kolom:
Fungsi rakitan bernilai tabel (FT)
Fungsi SQL bernilai tabel sebaris (IF)
Tabel internal (IT)
Tabel sistem (S)
Fungsi SQL bernilai tabel (TF)
Tabel pengguna (U)
Tampilan (V)
| Nama kolom | Jenis data | Deskripsi |
|---|---|---|
| object_id | int | ID objek tempat kolom ini berada. |
| nama | nama sysname | Nama kolom. Unik dalam objek . |
| column_id | int | ID kolom. Unik dalam objek . ID kolom mungkin tidak berurutan. |
| system_type_id | tinyint | ID jenis sistem kolom. |
| user_type_id | int | ID jenis kolom seperti yang ditentukan oleh pengguna. Untuk mengembalikan nama jenis, gabungkan ke tampilan katalog sys.types pada kolom ini. |
| max_length | smallint | Panjang maksimum (dalam byte) kolom. -1 = Jenis data kolom adalah varchar(max), nvarchar(max), varbinary(max), atau xml. Untuk kolom teks, ntext, dan gambar , nilai max_length akan menjadi 16 (mewakili pointer 16-byte saja) atau nilai yang ditetapkan oleh sp_tableoption 'teks dalam baris'. |
| presisi | tinyint | Presisi kolom jika berbasis numerik; jika tidak, 0. |
| Skala | tinyint | Skala kolom jika berbasis numerik; jika tidak, 0. |
| collation_name | nama sysname | Nama kolabasi kolom jika berbasis karakter; jika tidak NULL. |
| is_nullable | bit | 1 = Kolom dapat diubah ke null. |
| is_ansi_padded | bit | 1 = Kolom menggunakan ANSI_PADDING perilaku ON jika karakter, biner, atau varian. 0 = Kolom bukan karakter, biner, atau varian. |
| is_rowguidcol | bit | 1 = Kolom adalah ROWGUIDCOL yang dideklarasikan. |
| is_identity | bit | 1 = Kolom memiliki nilai identitas |
| is_computed | bit | 1 = Kolom adalah kolom komputasi. |
| is_filestream | bit | 1 = Kolom adalah kolom FILESTREAM. |
| is_replicated | bit | 1 = Kolom direplikasi. |
| is_non_sql_subscribed | bit | 1 = Kolom memiliki pelanggan non-SQL Server. |
| is_merge_published | bit | 1 = Kolom digabungkan-diterbitkan. |
| is_dts_replicated | bit | 1 = Kolom direplikasi dengan menggunakan SSIS. |
| is_xml_document | bit | 1 = Konten adalah dokumen XML lengkap. 0 = Konten adalah fragmen dokumen atau tipe data kolom bukan xml. |
| xml_collection_id | int | Bukan nol jika tipe data kolom adalah xml dan XML dititik. Nilai akan menjadi ID koleksi yang berisi namespace layanan skema XML validasi kolom. 0 = Tidak ada koleksi skema XML. |
| default_object_id | int | ID objek default, terlepas dari apakah itu objek yang berdiri sendiri sys.sp_bindefault, atau batasan DEFAULT tingkat kolom sebaris. Kolom parent_object_id objek default tingkat kolom sebaris adalah referensi kembali ke tabel itu sendiri. 0 = Tidak ada default. |
| rule_object_id | int | ID aturan mandiri yang terikat ke kolom dengan menggunakan sys.sp_bindrule. 0 = Tidak ada aturan yang berdiri sendiri. Untuk batasan CHECK tingkat kolom, lihat sys.check_constraints (Transact-SQL). |
| is_sparse | bit | 1 = Kolom adalah kolom jarang. Untuk informasi selengkapnya, lihat Menggunakan Kolom Jarang. |
| is_column_set | bit | 1 = Kolom adalah kumpulan kolom. Untuk informasi selengkapnya, lihat Menggunakan Kolom Jarang. |
| generated_always_type | tinyint | Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database. 5, 6, 7, 8 hanya berlaku untuk SQL Database. Mengidentifikasi kapan nilai kolom dihasilkan (akan selalu 0 untuk kolom dalam tabel sistem): 0 = NOT_APPLICABLE 1 = AS_ROW_START 2 = AS_ROW_END 5 = AS_TRANSACTION_ID_START 6 = AS_TRANSACTION_ID_END 7 = AS_SEQUENCE_NUMBER_START 8 = AS_SEQUENCE_NUMBER_END Untuk informasi selengkapnya, lihat Tabel Temporal (Database relasional). |
| generated_always_type_desc | nvarchar(60) | Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database. Deskripsi tekstual nilai generated_always_type(selalu NOT_APPLICABLE untuk kolom dalam tabel sistem)NOT_APPLICABLE AS_ROW_START AS_ROW_END Berlaku untuk: Dimulai dengan SQL Server 2022, SQL Database AS_TRANSACTION_ID_START AS_TRANSACTION_ID_END AS_SEQUENCE_NUMBER_START AS_SEQUENCE_NUMBER_END |
| encryption_type | int | Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database. Jenis enkripsi: 1 = Enkripsi deterministik 2 = Enkripsi acak |
| encryption_type_desc | nvarchar(64) | Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database. Deskripsi jenis enkripsi: ACAK DETERMINISTIK |
| encryption_algorithm_name | nama sysname | Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database. Nama algoritma enkripsi. Hanya AEAD_AES_256_CBC_HMAC_SHA_512 yang didukung. |
| column_encryption_key_id | int | Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database. ID of the CEK. |
| column_encryption_key_database_name | nama sysname | Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru, SQL Database. Nama database tempat kunci enkripsi kolom ada jika berbeda dari database kolom. NULL jika kunci ada dalam database yang sama dengan kolom . |
| is_hidden | bit | Berlaku untuk: SQL Server 2019 (15.x) dan yang lebih baru, SQL Database. Menunjukkan apakah kolom disembunyikan: 0 = kolom reguler, tidak tersembunyi, terlihat 1 = kolom tersembunyi |
| is_masked | bit | Berlaku untuk: SQL Server 2019 (15.x) dan yang lebih baru, SQL Database. Menunjukkan apakah kolom diselubungi oleh masking data dinamis: 0 = kolom reguler, tidak bertopeng 1 = kolom ditutupi |
| graph_type | int | Kolom internal dengan sekumpulan nilai. Nilainya antara 1-8 untuk kolom grafik dan NULL untuk yang lain. |
| graph_type_desc | nvarchar(60) | kolom internal dengan sekumpulan nilai |
| is_data_deletion_filter_column | bit | Berlaku untuk: Azure SQL Edge. Menunjukkan apakah kolom adalah kolom filter retensi data untuk tabel. |
| ledger_view_column_type | tinyint | Berlaku untuk: Dimulai dengan SQL Server 2022, SQL Database. Jika bukan NULL, menunjukkan jenis kolom dalam tampilan ledger: 1 = TRANSACTION_ID 2 = SEQUENCE_NUMBER 3 = OPERATION_TYPE 4 = OPERATION_TYPE_DESC Untuk informasi selengkapnya tentang ledger database, lihat Ledger. |
| ledger_view_column_type_desc | nvarchar(60) | Berlaku untuk: Dimulai dengan SQL Server 2022, SQL Database. Jika bukan NULL, berisi deskripsi tekstual dari jenis kolom dalam tampilan ledger: TRANSACTION_ID SEQUENCE_NUMBER OPERATION_TYPE OPERATION_TYPE_DESC |
| is_dropped_ledger_table_column | bit | Berlaku untuk: Dimulai dengan SQL Server 2022, SQL Database. Menunjukkan kolom tabel ledger yang telah dihilangkan. |
Izin
Visibilitas metadata dalam tampilan katalog terbatas pada securable yang dimiliki pengguna atau di mana pengguna telah diberi beberapa izin. Untuk informasi selengkapnya, lihat Konfigurasi Visibilitas Metadata.
Lihat juga
Tampilan Sistem (Transact-SQL)
Tampilan Katalog Objek (Transact-SQL)
Tampilan Katalog (Transact-SQL)
Mengkueri FAQ Katalog Sistem SQL Server
sys.all_columns (T-SQL)
sys.system_columns (T-SQL)