Perbezaan antara char dan varchar

Perbezaan antara char dan varchar

Char vs Varchar
 

Char dan Varchar biasanya digunakan jenis data watak dalam sistem pangkalan data yang kelihatan sama walaupun terdapat perbezaan di antara mereka ketika datang ke keperluan penyimpanan. Dalam reka bentuk pangkalan data, terdapat banyak jenis data yang digunakan. Daripada mereka, jenis data watak mendapat tempat yang lebih menonjol kerana ia digunakan untuk menyimpan banyak maklumat berbanding dengan nombor. Jenis data watak digunakan untuk menyimpan aksara atau data alfanumerik dalam rentetan. Jenis set aksara pangkalan data ditakrifkan semasa membuat pangkalan data. Sekali lagi, daripada jenis data watak ini, char dan varchar adalah yang biasa digunakan. Artikel ini menerangkan kedua -dua jenis data, char dan varchar, dan perbezaan di antara mereka.

Apa itu char?

Definisi ISO char adalah watak dan jenis data char adalah pernah Simpan watak. Char (n) boleh menyimpan n ukuran watak tetap. Jumlah maksimum aksara yang boleh dipegang oleh char (n) adalah 255 chars dan panjang rentetan mestilah nilai dari 1 hingga 8000. Char adalah lima puluh peratus lebih cepat daripada Varchar dan, oleh itu, kita boleh mendapatkan prestasi yang lebih baik apabila kita bekerja dengan char. Char menggunakan peruntukan memori statik semasa menyimpan data. Apabila kita mahu menyimpan rentetan dengan panjang tetap yang diketahui, lebih baik menggunakan char. Sebagai contoh, ketika menyimpan 'ya' dan 'tidak' sebagai 'y' dan 'n', kita boleh menggunakan char jenis data. Dan juga apabila menyimpan nombor kad identiti kebangsaan seseorang dengan sepuluh aksara, kita boleh menggunakan jenis data sebagai char (10).

Apa itu Varchar?

Seperti namanya, Varchar dipanggil a watak berubah -ubah. Varchar digunakan untuk menyimpan data alfanumerik yang mempunyai panjang berubah -ubah. Bilangan maksimum aksara yang boleh dipegang jenis data ini ialah 4000 aksara dan saiz storan maksimum ialah 2 GB. Saiz penyimpanan varchar adalah panjang sebenar data ditambah dua bait. Varchar lebih perlahan daripada char dan menggunakan peruntukan memori dinamik semasa menyimpan data. Kita boleh menggunakan varchar apabila menyimpan data seperti nama, alamat, penerangan, dll. Bukan sahaja rentetan, tetapi juga jenis bukan rentetan seperti jenis tarikh, "12 Mac 2015", "12/03/2015" juga boleh disimpan dalam jenis data Varchar.

Apakah perbezaan antara char dan varchar?

• Walaupun char dan varchar adalah medan data aksara, char adalah medan data panjang tetap dan Varchar adalah medan data saiz berubah -ubah.

• Char boleh menyimpan hanya saiz tetap aksara tali bukan unicode, tetapi Varchar boleh menyimpan saiz rentetan yang berubah-ubah.

• Char lebih baik daripada Varchar untuk data yang kerap berubah . Ini kerana baris data tetap panjang tidak terdedah kepada pemecahan.

• Char hanya akan menduduki ruang tetap yang ditakrifkan semasa mengisytiharkan pembolehubah. Tetapi Varchar akan menduduki ruang berdasarkan data yang dimasukkan dan juga akan menduduki 1 atau 2 bait sebagai awalan panjang.

• Jika data kurang daripada 255 chars, 1 byte diperuntukkan dan jika data lebih daripada 255 chars 2 bait dikhaskan. Jika kita menggunakan char untuk menyimpan bendera 'y' dan 'n' ia akan menggunakan satu bait untuk disimpan, tetapi apabila kita menggunakan varchar, ia akan mengambil dua bait untuk menyimpan bendera termasuk byte tambahan sebagai awalan panjang.

Ringkasan:

Char vs Varchar

Char dan Varchar adalah jenis data watak yang paling banyak digunakan dalam pangkalan data. Char digunakan untuk menyimpan rentetan dengan panjang tetap manakala varchar digunakan untuk menyimpan rentetan yang mempunyai panjang yang berbeza -beza. Untuk mendapatkan prestasi yang lebih baik dari data, lebih penting untuk memilih jenis data yang betul untuk bidang jadual dalam pangkalan data anda. Lebih mudah menggunakan jenis data terkecil yang dapat menyimpan data dengan betul, kerana mereka mengambil sedikit ruang dari ingatan.

Imej ihsan: Varchar melalui Wikicommons (domain awam)