Artikel ini berisi referensi cepat tipe data yang disediakan sistem yang tersedia di SQL Server 2017, bersama dengan beberapa informasi dasar seperti panjang maksimum dalam byte, presisi, skala, dan apakah tipe data nullable atau tidak (1
artinya tidak dapat dibatalkan, 0
artinya tidak dapat dibatalkan).
Angka persis
Nama | Panjang Maks | Presisi | Skala | Tidak dapat dibatalkan? |
---|---|---|---|---|
besar | 8 | 19 | 0 | 1 |
sedikit | 1 | 1 | 0 | 1 |
desimal | 17 | 38 | 38 | 1 |
int | 4 | 10 | 0 | 1 |
uang | 8 | 19 | 4 | 1 |
numerik | 17 | 38 | 38 | 1 |
kecil | 2 | 5 | 0 | 1 |
uang kecil | 4 | 10 | 4 | 1 |
kecil | 1 | 3 | 0 | 1 |
Perkiraan angka
Nama | Panjang Maks | Presisi | Skala | Tidak dapat dibatalkan? |
---|---|---|---|---|
mengambang | 8 | 53 | 0 | 1 |
nyata | 4 | 24 | 0 | 1 |
Tanggal dan waktu
Nama | Panjang Maks | Presisi | Skala | Tidak dapat dibatalkan? |
---|---|---|---|---|
tanggal | 3 | 10 | 0 | 1 |
datetime2 | 8 | 27 | 7 | 1 |
waktu tanggal | 8 | 23 | 3 | 1 |
datetimeoffset | 10 | 34 | 7 | 1 |
waktu kecil | 4 | 16 | 0 | 1 |
waktu | 5 | 16 | 7 | 1 |
String karakter
Nama | Panjang Maks | Presisi | Skala | Tidak dapat dibatalkan? |
---|---|---|---|---|
chart | 8000 | 0 | 0 | 1 |
teks | 16 | 0 | 0 | 1 |
varchar | 8000 | 0 | 0 | 1 |
String karakter Unicode
Nama | Panjang Maks | Presisi | Skala | Tidak dapat dibatalkan? |
---|---|---|---|---|
nchar | 8000 | 0 | 0 | 1 |
nteks | 16 | 0 | 0 | 1 |
nvarchar | 8000 | 0 | 0 | 1 |
String biner
Nama | Panjang Maks | Presisi | Skala | Tidak dapat dibatalkan? |
---|---|---|---|---|
biner | 8000 | 0 | 0 | 1 |
gambar | 16 | 0 | 0 | 1 |
varbiner | 8000 | 0 | 0 | 1 |
Tipe data lainnya
Nama | Panjang Maks | Presisi | Skala | Tidak dapat dibatalkan? |
---|---|---|---|---|
hierarkiid | 892 | 0 | 0 | 1 |
sql_variant | 8016 | 0 | 0 | 1 |
geometri | -1 | 0 | 0 | 1 |
geografi | -1 | 0 | 0 | 1 |
stempel waktu* | 8 | 0 | 0 | 0 |
pengidentifikasi unik | 16 | 0 | 0 | 1 |
xml | -1 | 0 | 0 | 1 |
nama sistem | 256 | 0 | 0 | 0 |
* Stempel waktu tipe data adalah sinonim untuk versi baris tipe data. Lihat di bawah untuk informasi lebih lanjut.
Tipe 'kursor', 'tabel' dan 'versi baris'
Saya mengambil informasi dalam tabel di atas melalui sys.types
tampilan katalog sistem. Selain tipe di atas, dokumentasi Microsoft tentang tipe data juga mencantumkan kursor dan tabel jenis, serta versi baris bukannya stempel waktu .
Jenis 'stempel waktu'
Microsoft menyarankan agar stempel waktu sintaks tidak digunakan lagi. Sebaiknya sekarang kita menggunakan rowversion bukannya stempel waktu sedapat mungkin dalam pernyataan DDL kami.
Namun, sementara itu, Anda mungkin menemukan kolom yang tampaknya masih didefinisikan sebagai stempel waktu bahkan ketika Anda secara eksplisit menentukan rowversion saat membuatnya (menggunakan Transact-SQL). Namun demikian, Microsoft menyarankan bahwa ini adalah sintaks yang benar untuk digunakan di masa mendatang.
Perhatikan juga bahwa stempel waktu di T-SQL/SQL Server berbeda dari stempel waktu tipe data yang ditentukan dalam standar ISO.
Tampaknya alasan itu tidak digunakan lagi adalah karena kebingungan yang disebabkan oleh namanya. Microsoft mengakui hal ini pada tahun 2007, dan menyarankan agar mereka mencoba mengatasinya dengan cara yang kompatibel dengan versi sebelumnya di rilis mendatang.
Periksa Basis Data Anda Sendiri
Anda dapat mengambil informasi tipe data untuk database Anda sendiri dengan menggunakan sys.types
tampilan sistem. Lihat Cara Mengembalikan Daftar Tipe Data di SQL Server untuk penjelasan dan contoh. Menjalankan tampilan ini juga mengembalikan semua alias dan tipe yang ditentukan pengguna yang ada di database.