Tipe Data SQL Server: Varchar, Numeric, Tanggal Waktu (Contoh T-SQL)

Daftar Isi:

Anonim

Apa itu Datatype?

Jenis data didefinisikan sebagai jenis data yang dapat disimpan oleh setiap kolom atau variabel di MS SQL Server.

Saat membuat tabel atau variabel apa pun, selain menentukan namanya, Anda juga mengatur Jenis Data yang akan disimpannya.

Cara menggunakan tipe data MS SQL

  • Anda perlu menentukan terlebih dahulu, jenis data yang dapat disimpan oleh kolom atau variabel. Menentukan tipe data juga membatasi pengguna untuk memasukkan data yang tidak diharapkan atau tidak valid.
  • Anda dapat menggunakan memori secara efisien dengan menetapkan tipe data yang sesuai ke variabel atau kolom yang akan mengalokasikan hanya jumlah memori sistem yang diperlukan untuk data kolom masing-masing.
  • MS SQL menawarkan kategori luas dari tipe data sesuai kebutuhan pengguna. Seperti Tanggal, gambar biner, dll.

Dalam tutorial ini, Anda akan mempelajari:

  • Apa itu Datatype?
    • Cara menggunakan tipe data MS SQL
  • Mengapa menggunakan DataTypes?
    • Angka Tepat
    • Perkiraan Numerik
    • Tanggal dan waktu
    • String Karakter
    • String Karakter Unicode
    • String Biner
    • Jenis data lainnya

Mengapa menggunakan DataTypes?

Mari, ambil contoh halaman Pendaftaran sederhana dari aplikasi situs web. Tiga bidang masukan adalah Nama Depan, Nama Belakang & Nomor Kontak.

Di sini kita harus mencatatnya secara real time:

  • "Nama Depan / Belakang" akan selalu dalam abjad .
  • "Kontak" akan selalu berupa angka .

  • Dari gambar di atas, layak untuk mendefinisikan "Nama Depan / Belakang" sebagai karakter dan " Kontak" sebagai bilangan bulat .

Terbukti bahwa dalam aplikasi apa pun, semua bidang memiliki satu atau jenis data lainnya. Misalnya numerik, abjad, tanggal, dan masih banyak lagi.

Juga, perhatikan bahwa tipe data yang berbeda memiliki kebutuhan memori yang berbeda. Oleh karena itu, lebih masuk akal untuk menentukan kolom atau variabel dengan tipe data yang akan disimpannya untuk penggunaan memori yang efisien.

Tipe data tersedia di MS SQL

Server MS SQL mendukung kategori tipe Data berikut ini:

  • Numerik yang tepat
  • Perkiraan numerik
  • Tanggal dan waktu
  • String karakter
  • String karakter unicode
  • String biner
  • Tipe data lainnya
Jenis Data MSQL

Angka Tepat

Numerik tepat memiliki sembilan tipe sub-tipe data. Tipe Data Numerik Tepat

Tipe data Deskripsi Batasan yang lebih rendah Batas atas Penyimpanan
bigint Ini menyimpan bilangan bulat dalam kisaran yang diberikan −2 63 (−9.223.372, 036.854.775.808) 2 63−1 (−9.223.372, 036.854.775.807) 8 byte
int Ini menyimpan bilangan bulat dalam kisaran yang diberikan −2 31 (−2.147, 483.648) 2 31−1 (−2.147, 483.647) 4 byte
smallint Ini menyimpan bilangan bulat dalam kisaran yang diberikan −2 15 (−32.767) 2 15 (−32.768) 2 byte
tinyint Ini menyimpan bilangan bulat dalam kisaran yang diberikan 0 255 1 byte
sedikit Ini bisa mengambil nilai 0, 1, atau NULL. 0 1 Kolom 1 byte / 8bit
desimal Digunakan untuk skala dan angka presisi tetap −10 38 + 1 10 381−1 5 hingga 17 byte
numerik Digunakan untuk skala dan angka presisi tetap −10 38 + 1 10 381−1 5 hingga 17 byte
uang Data moneter yang digunakan −922.337, 203, 685.477.5808 +922,337, 203, 685,477.5807 8 byte
uang kecil Data moneter yang digunakan −214.478,3648 +214.478.3647 4 byte

Contoh:

Pertanyaan:

DECLARE @Datatype_Int INT = 2PRINT @Datatype_Int

Hasil: 2

Sintaks: Desimal (P, S)

Sini,

  • P adalah presisi
  • S adalah skala

Pertanyaan:

DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31PRINT @Datatype_Decimal

Keluaran: 2.31

Perkiraan Numerik

Kategori Approximate Numeric mencakup floating point dan nilai riil. Mereka banyak digunakan dalam perhitungan ilmiah. Perkiraan Jenis Data Numerik

Tipe data Deskripsi Batasan yang lebih rendah Batas atas Penyimpanan Presisi
float (n) Digunakan untuk angka presisi mengambang −1,79E + 308 1,79E + 308 Tergantung pada nilai n 7 Digit
nyata Digunakan untuk angka presisi mengambang −3,40E + 38 3.40E + 38 4 byte 15 Digit
Syntax: FLOAT [(n)] 

Di sini, n adalah jumlah bit yang digunakan untuk menyimpan mantissa dari bilangan pelampung dalam notasi ilmiah. Secara default, nilai n adalah 53.

Ketika pengguna mendefinisikan tipe data seperti float, n harus bernilai antara 1 dan 53.

SQL Server memperlakukan n sebagai salah satu dari dua kemungkinan nilai. Jika 1 <= n <= 24, n diperlakukan sebagai 24. Jika 25 <= n <= 53, n diperlakukan sebagai 53.

Contoh Query:

DECLARE @Datatype_Float FLOAT(24) = 22.1234PRINT @Datatype_Float

Keluaran: 22.1234

Tanggal dan waktu

Ini menyimpan data tipe Tanggal dan waktu. Jenis Data Tanggal dan Waktu

Tipe data Deskripsi Ukuran penyimpanan Ketepatan Kisaran Bawah Kisaran Atas
Tanggal Waktu Digunakan untuk menentukan tanggal dan waktu dari 1 Januari 1753 hingga 31 Desember 9999. Akurasi ini 3,33 milidetik. 8 byte Dibulatkan ke kelipatan .000, .003, .007 1753-01-01 9999-12-31
smalldatetime Digunakan untuk menentukan tanggal dan waktu dari 1 Januari 0001 hingga 31 Desember 9999. Ini memiliki akurasi 100 nanodetik 4 byte, tetap 1 menit 1900-01-01 2079-06-06
tanggal Digunakan untuk menyimpan hanya tanggal dari 1 Januari 0001 hingga 31 Desember 9999 3 byte, tetap 1 hari 0001-01-01 9999-12-31
waktu Digunakan untuk menyimpan hanya nilai waktu saja dengan akurasi 100 nanodetik. 5 byte 100 nanodetik 00: 00: 00.0000000 23: 59: 59,9999999
datetimeoffset Mirip dengan datatime tetapi memiliki offset zona waktu 10 byte 100 nanodetik 0001-01-01 9999-12-31
datetime2 Digunakan untuk menentukan tanggal dan waktu dari 1 Januari 0001 hingga 31 Desember 9999 6 byte 100 nanodetik 0001-01-01 9999-12-31

Contoh Query:

DECLARE @Datatype_Date DATE = '2030-01-01'PRINT @Datatype_Date

Keluaran: '2030-01-01'

String Karakter

Kategori ini terkait dengan tipe karakter. Ini memungkinkan pengguna untuk menentukan tipe data dari karakter yang dapat memiliki panjang tetap dan variabel. Ini memiliki empat jenis tipe data. Tipe Data String Karakter

Tipe data Deskripsi Batasan yang lebih rendah Batas atas Penyimpanan
arang Ini adalah string karakter dengan lebar tetap. Ini menyimpan maksimal 8.000 karakter. 0 karakter 8000 karakter n byte
varchar.dll Ini adalah string karakter dengan lebar variabel 0 karakter 8000 karakter n byte + 2 byte
varchar (maks) Ini adalah string karakter dengan lebar variabel. Ini menyimpan maksimal 1.073.741.824 karakter. 0 karakter 2 31 karakter n byte + 2 byte
teks Ini adalah string karakter dengan lebar variabel. Ini menyimpan data teks maksimal 2GB. 0 karakter 2.147.483.647 karakter n byte + 4 byte

Contoh Query:

DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype'PRINT @Datatype_Char

Output: Ini adalah Character Datatype

String Karakter Unicode

Kategori ini menyimpan rangkaian lengkap karakter Unicode yang menggunakan pengkodean karakter UTF-16. Tipe Data String Karakter Unicode

Tipe data Deskripsi Batasan yang lebih rendah Batas atas Penyimpanan
nchar Ini adalah string Unicode dengan lebar tetap 0 karakter 4000 karakter 2 kali n byte
nvarchar.dll Ini adalah string unicode dengan lebar variabel 0 karakter 4000 karakter 2 kali n byte + 2 byte
ntext Ini adalah string unicode dengan lebar variabel 0 karakter 1.073.741.823 karakter 2 kali panjang senar

Contoh Query:

DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype'PRINT @Datatype_nChar

Output: Ini adalah nCharacter Datatype

String Biner

Kategori ini berisi string biner dengan panjang tetap dan variabel. Tipe Data String Biner

Tipe data Deskripsi Batasan yang lebih rendah Batas atas Penyimpanan
biner Ini adalah string biner dengan lebar tetap. Ini menyimpan maksimal 8.000 byte. 0 byte 8000 byte n byte
varbinary Ini adalah string biner dengan lebar variabel. Ini menyimpan maksimal 8.000 byte 0 byte 8000 byte Panjang aktual data yang dimasukkan + 2 byte
gambar Ini adalah string biner dengan lebar variabel. Ini menyimpan maksimal 2GB. 0 byte 2.147.483.647 byte

Contoh Query:

DECLARE @Datatype_Binary BINARY(2) = 12;PRINT @Datatype_Binary

Keluaran: 0x000C

Jenis data lainnya

Ini adalah tipe data lain yang berbeda dengan deskripsi di bawah ini-

Tipe data Deskripsi
Kursor Outputnya adalah kolom sp_cursor_list dan sp_describe_cursor. Ini mengembalikan nama variabel kursor.
Versi baris Ini versi stempel baris tabel.
Hierarki Jenis data ini mewakili posisi dalam hierarki
Pengenal unik Konversi dari ekspresi karakter.
Sql_variant Ini menyimpan nilai Datatypes yang didukung SQL server.
XML Ini menyimpan data XML dalam kolom.
Jenis Geometri Spasial Ini mewakili data dalam sistem koordinat datar.
Jenis Geografi Spasial Ini mewakili data dalam sistem koordinat bumi bulat.
meja Ini menyimpan set hasil untuk diproses nanti.

Fakta Menarik!

  • Tipe data CHAR lebih cepat daripada VARCHAR saat mengambil data.

Ringkasan:

  • Setiap kolom dalam tabel ditentukan dengan tipe datanya selama pembuatan tabel.
  • Ada enam kategori utama dan satu kategori lain-lain. Lain-lain memiliki sembilan subkategori tipe data yang tersedia.