Jenis Data Pelayan SQL: Varchar, Numeric, Time Date (Contoh T-SQL)

Isi kandungan:

Anonim

Apakah itu Datatype?

Jenis data didefinisikan sebagai jenis data yang boleh disimpan oleh setiap lajur atau pemboleh ubah dalam MS SQL Server.

Semasa membuat jadual atau pemboleh ubah apa pun, selain menentukan namanya, anda juga menetapkan Jenis Data yang akan disimpannya.

Cara menggunakan jenis data MS SQL

  • Anda perlu menentukan terlebih dahulu, jenis data yang boleh disimpan oleh lajur atau pemboleh ubah. Menentukan jenis data juga menyekat pengguna daripada memasukkan data yang tidak dijangka atau tidak sah.
  • Anda boleh menggunakan memori dengan cekap dengan menetapkan jenis data yang sesuai untuk pemboleh ubah atau lajur yang hanya akan memperuntukkan jumlah memori sistem yang diperlukan untuk data lajur masing-masing.
  • MS SQL menawarkan kategori jenis data yang luas mengikut keperluan pengguna. Seperti Tarikh, gambar binari, dll.

Dalam tutorial ini, anda akan belajar:

  • Apakah itu Datatype?
    • Cara menggunakan jenis data MS SQL
  • Mengapa menggunakan Jenis Data?
    • Numerik Tepat
    • Numerik Kira-kira
    • Tarikh dan masa
    • Rentetan watak
    • Rentetan Watak Unicode
    • Rentetan Perduaan
    • Jenis Data Lain

Mengapa menggunakan Jenis Data?

Mari, ambil contoh halaman Pendaftaran aplikasi laman web yang sederhana. Tiga medan input adalah Nama Pertama, Nama Belakang & nombor Perhubungan.

Di sini kita harus perhatikan bahawa dalam masa nyata:

  • "Nama Depan / Akhir" akan sentiasa mengikut abjad .
  • "Kenalan" akan sentiasa berangka .

  • Dari gambar di atas, perlu didefinisikan "Nama Depan / Akhir" sebagai watak dan " Kenalan" sebagai bilangan bulat .

Jelas bahawa dalam mana-mana aplikasi, semua bidang mempunyai satu atau jenis data yang lain. Cth, angka, abjad, tarikh, dan banyak lagi.

Juga, perhatikan bahawa jenis data yang berlainan mempunyai keperluan memori yang berbeza. Oleh itu, lebih masuk akal untuk menentukan lajur atau pemboleh ubah dengan jenis data yang akan dimiliki untuk penggunaan memori yang cekap.

Jenis data terdapat dalam MS SQL

Pelayan MS SQL menyokong kategori jenis Data berikut:

  • Nombor tepat
  • Nombor anggaran
  • Tarikh dan masa
  • Rentetan watak
  • Rentetan watak unicode
  • Rentetan binari
  • Jenis data lain
Jenis Data MSQL

Numerik Tepat

Nombor tepat mempunyai sembilan jenis sub-data jenis. Jenis Data Numerik Tepat

Jenis data Penerangan Had yang lebih rendah Had atas Ingatan
bigint Ia menyimpan nombor bulat dalam julat yang diberikan −2 63 (−9,223,372, 036,854,775,808) 2 63−1 (−9,223,372, 036,854,775,807) 8 bait
int Ia menyimpan nombor bulat dalam julat yang diberikan −2 31 (−2.147, 483.648) 2 31−1 (−2.147, 483.647) 4 bait
smallint Ia menyimpan nombor bulat dalam julat yang diberikan −2 15 (−32,767) 2 15 (−32,768) 2 bait
smallint Ia menyimpan nombor bulat dalam julat yang diberikan 0 255 1 bait
sedikit Nilai boleh mengambil 0, 1, atau NULL. 0 1 Lajur 1 bait / 8bit
perpuluhan Digunakan untuk skala dan nombor ketepatan tetap −10 38 + 1 10 381−1 5 hingga 17 bait
berangka Digunakan untuk skala dan nombor ketepatan tetap −10 38 + 1 10 381−1 5 hingga 17 bait
wang Data kewangan terpakai −922,337, 203, 685,477.5808 +922,337, 203, 685,477.5807 8 bait
wang kecil Data kewangan terpakai −214,478.3648 +214,478.3647 4 bait

Contoh:

Pertanyaan:

DECLARE @Datatype_Int INT = 2PRINT @Datatype_Int

Keluaran: 2

Sintaks: Perpuluhan (P, S)

Di sini,

  • P adalah ketepatan
  • S adalah skala

Pertanyaan:

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

Keluaran: 2.31

Numerik Kira-kira

Kategori Numerik anggaran merangkumi titik terapung dan nilai sebenar. Mereka kebanyakannya digunakan dalam pengiraan saintifik. Jenis Data Numerik Kira-kira

Jenis data Penerangan Had yang lebih rendah Had atas Ingatan Ketepatan
terapung (n) Digunakan untuk nombor ketepatan terapung −1.79E + 308 1.79E + 308 Bergantung pada nilai n 7 Digit
nyata Digunakan untuk nombor ketepatan terapung −3.40E + 38 3.40E + 38 4 bait 15 Digit
Syntax: FLOAT [(n)] 

Di sini, n adalah bilangan bit yang digunakan untuk menyimpan mantissa nombor apungan dalam notasi saintifik. Secara lalai, nilai n adalah 53.

Apabila pengguna menentukan jenis data seperti float, n harus menjadi nilai antara 1 dan 53.

Pelayan SQL memperlakukan n sebagai salah satu daripada dua nilai yang mungkin. Sekiranya 1 <= n <= 24, n dianggap sebagai 24. Sekiranya 25 <= n <= 53, n dianggap sebagai 53.

Pertanyaan Contoh:

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

Keluaran: 22.1234

Tarikh dan masa

Ia menyimpan data jenis Tarikh dan masa. Jenis Data Tarikh dan Masa

Jenis data Penerangan Saiz simpanan Ketepatan Julat Bawah Julat Atas
Masa tarikh Digunakan untuk menentukan tarikh dan waktu dari 1 Januari 1753 hingga 31 Disember 9999. Ia mempunyai ketepatan 3.33 milisaat. 8 bait Dibundarkan kepada kenaikan 0,000, .003, .007 1753-01-01 9999-12-31
masa kecil Digunakan untuk menentukan tarikh dan waktu dari 1 Januari 0001 hingga 31 Disember 9999. Ia mempunyai ketepatan 100 nanodetik 4 bait, tetap 1 minit 1900-01-01 2079-06-06
Tarikh Digunakan untuk menyimpan tarikh sahaja dari 1 Januari 0001 hingga 31 Disember 9999 3 bait, tetap 1 hari 0001-01-01 9999-12-31
masa Digunakan untuk menyimpan nilai masa sahaja dengan ketepatan 100 nanodetik. 5 bait 100 nanodetik 00: 00: 00.0000000 23: 59: 59.9999999
datetimeoffset Mirip dengan datatime tetapi mempunyai offset zon waktu 10 bait 100 nanodetik 0001-01-01 9999-12-31
masa masa2 Digunakan untuk menentukan tarikh dan masa dari 1 Januari 0001 hingga 31 Disember 9999 6 bait 100 nanodetik 0001-01-01 9999-12-31

Pertanyaan Contoh:

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

Keluaran: '2030-01-01'

Rentetan watak

Kategori ini berkaitan dengan jenis watak. Ini membolehkan pengguna menentukan jenis data watak yang panjangnya tetap dan berubah. Ia mempunyai empat jenis jenis data. Jenis Data Rentetan Karakter

Jenis data Penerangan Had yang lebih rendah Had atas Ingatan
char Ini adalah rentetan watak dengan lebar tetap. Ia menyimpan maksimum 8,000 aksara. 0 aksara 8000 watak n bait
varchar Ini adalah rentetan watak dengan lebar berubah 0 aksara 8000 watak n bait + 2 bait
varchar (maksimum) Ini adalah rentetan watak dengan lebar berubah. Ia menyimpan maksimum 1,073,741,824 aksara. 0 aksara 2 31 watak n bait + 2 bait
teks Ini adalah rentetan watak dengan lebar berubah. Ia menyimpan maksimum 2GB data teks. 0 aksara 2,147,483,647 watak n bait + 4 bait

Pertanyaan Contoh:

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

Keluaran: Ini adalah Jenis Data Karakter

Rentetan Watak Unicode

Kategori ini menyimpan pelbagai watak Unicode yang menggunakan pengekodan watak UTF-16. Jenis Data Rentetan Karakter Unicode

Jenis data Penerangan Had yang lebih rendah Had atas Ingatan
nchar Ini adalah rentetan Unicode dengan lebar tetap 0 aksara 4000 watak 2 kali n bait
nvarchar Ini adalah rentetan unicode dengan lebar berubah 0 aksara 4000 watak 2 kali n bait + 2 bait
ntext Ini adalah rentetan unicode dengan lebar berubah 0 aksara 1,073,741,823 char 2 kali panjang tali

Pertanyaan Contoh:

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

Keluaran: Ini adalah Jenis Data nCharacter

Rentetan Perduaan

Kategori ini mengandungi rentetan binari dengan panjang tetap dan berubah-ubah. Jenis Data Rentetan Perduaan

Jenis data Penerangan Had yang lebih rendah Had atas Ingatan
binari Ini adalah rentetan binari lebar tetap. Ia menyimpan maksimum 8,000 bait. 0 bait 8000 bait n bait
varikos Ini adalah rentetan binari dengan lebar berubah. Ia menyimpan maksimum 8,000 bait 0 bait 8000 bait Panjang sebenar data yang dimasukkan + 2 bait
imej Ini adalah rentetan binari dengan lebar berubah. Ia menyimpan maksimum 2GB. 0 bait 2,147,483,647 bait

Pertanyaan Contoh:

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

Keluaran: 0x000C

Jenis Data Lain

Ini adalah jenis data lain yang berbeza dengan keterangan di bawah-

Jenis data Penerangan
Kursor Keluarannya adalah lajur sp_cursor_list dan sp_describe_cursor. Ia mengembalikan nama pemboleh ubah kursor.
Versi baris Versi itu menanda baris jadual.
Hierarkiid Jenis data ini mewakili kedudukan dalam hierarki
Pengecam unik Penukaran dari ungkapan watak.
Sql_variant Ia menyimpan nilai Datatype yang disokong oleh pelayan SQL.
XML Ia menyimpan data XML dalam lajur.
Jenis Geometri Spatial Ia mewakili data dalam sistem koordinat rata.
Jenis Geografi Spatial Ia mewakili data dalam sistem koordinat putaran-bumi.
meja Ia menyimpan set hasil untuk pemprosesan kemudian.

Fakta menarik!

  • Jenis data CHAR lebih pantas daripada VARCHAR semasa mengambil data.

Ringkasan:

  • Setiap lajur dalam jadual ditentukan dengan jenis datanya semasa pembuatan jadual.
  • Terdapat enam kategori utama dan satu kategori lain-lain. Lain-lain mempunyai sembilan subkategori jenis data yang tersedia.