Rumah >pangkalan data >Oracle >Apakah jenis medan dalam Oracle?
Jenis medan Oracle: 1. CHAR, rentetan panjang tetap; 2. VARCHAR2, rentetan panjang berubah-ubah; 4. BLOB, data binari; data; 6. REAL, jenis nombor nyata 7. TARIKH, data jenis tarikh, dsb.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi Oracle 11g, komputer Dell G3.
CHAR rentetan panjang tetap panjang maksimum 2000 bait
VARCHAR2 Panjang maksimum rentetan panjang berubah-ubah 4000 bait Panjang maksimum yang boleh diindeks 749
NCHAR Rentetan panjang tetap bergantung pada set aksara Maksimum panjang 2000 bait
NVARCHAR2 Rentetan panjang boleh ubah bergantung pada set aksara Panjang maksimum 4000 bait
TARIKH Tarikh (hari-bulan) -Tahun) DD -MM-YY(HH-MI-SS) Selepas ujian yang ketat, tiada ribuan pepijat
LONG Panjang maksimum rentetan super panjang ialah 2G (231-1), storan yang mencukupi Kerja besar
Data binari panjang tetap RAW, panjang maksimum 2000 bait, boleh menyimpan imej multimedia, bunyi, dll.
Panjang RAW panjang berubah-ubah panjang maksimum data binari ialah 2G Sama seperti di atas
BLOB Panjang maksimum data binari ialah 4G
CLOB Panjang maksimum aksara data ialah 4G
NCLOB Panjang maksimum data aksara bergantung pada set aksara ialah 4G
BFILE Panjang maksimum data binari yang disimpan di luar pangkalan data ialah 4G
ROWID Nombor baris unik yang direkodkan dalam jadual data 10 bait ********.****.**** format, * ialah 0 atau 1
NROWID Panjang maksimum nombor baris unik yang direkodkan dalam jadual data binari ialah 4000 bait
NUMBER(P,S) ) Jenis nombor P ialah digit integer, S ialah digit perpuluhan
DECIMAL(P,sans-serif; line-height:23.4px"> INTEGER Integer type small integer
Berikut ialah rekod terperinci beberapa teg .
Jika terdapat ruang sebelum dan selepas data anda, Oracle 8i akan memadamnya secara automatik. VARCHAR2 ialah jenis data yang paling biasa digunakan.
Panjang indeks maksimum yang boleh dilakukan ialah 3209.
nombor(m,n) m=1 hingga 38
n=-84 hingga 127 Lajur berangka panjang boleh ubah, membenarkan 0, nilai positif dan negatif, m ialah semua nombor digit yang sah , n ialah bilangan digit selepas titik perpuluhan.
Contohnya: nombor(5,2), nilai maksimum medan ini ialah 99,999 Jika nilai melebihi had digit, lebihan digit akan dipotong.
Contohnya: nombor(3,0), masukkan 575.316, data yang disimpan sebenar ialah 575.
tarikh Tiada tarikh sah dari 1 Januari 4712 SM hingga 31 Disember 4712 AD
Oracle 8i sebenarnya menyimpan data tarikh secara dalaman dalam 7 bait , juga termasuk jam, minit dan saat dalam. definisi.
Format lalai ialah DD-MON-YY, contohnya, 07-November-00 bermaksud 7 November 2000.
Rentetan aksara panjang Tiada Pembolehubah, had panjang maksimum ialah 2GB, digunakan untuk data rentetan panjang yang tidak memerlukan carian rentetan Jika anda ingin melakukan carian aksara, anda mesti menggunakan jenis varchar2.
long ialah jenis data yang lebih lama dan secara beransur-ansur akan digantikan dengan jenis data objek besar seperti BLOB, CLOB dan NCLOB pada masa hadapan.
raw(n) n=1 hingga 2000 data perduaan panjang boleh ubah, panjang maksimum n mesti ditentukan apabila mentakrifkan medan Oracle 8i secara khusus untuk menyimpan fail grafik atau fail teks yang lebih kecil. seperti dokumen Miceosoft Word.
raw ialah jenis data yang lebih lama dan secara beransur-ansur akan digantikan dengan jenis data objek besar seperti BLOB, CLOB dan NCLOB pada masa hadapan.
mentah panjang Tiada Data binari panjang boleh ubah, panjang maksimum ialah 2GB. Oracle 8i menggunakan format ini untuk menyimpan fail grafik besar atau fail teks berformat, seperti dokumen Miceosoft Word, serta fail bukan teks seperti audio dan video.
Anda tidak boleh mempunyai jenis panjang dan jenis mentah panjang pada masa yang sama dalam jadual yang sama Long raw juga merupakan jenis data yang lebih lama dan secara beransur-ansur akan digantikan dengan jenis data objek besar seperti BLOB, CLOB dan NCLOB. pada masa hadapan.
blob, clob, nclob Terdapat tiga jenis objek besar (LOB), digunakan untuk menyimpan fail grafik besar atau fail teks berformat, seperti dokumen Miceosoft Word dan fail bukan teks seperti audio dan video. Maksimum Panjangnya ialah 4GB.
Terdapat beberapa jenis LOB, bergantung pada jenis bait yang anda gunakan sebenarnya Oracle 8i menyimpan data ini di dalam pangkalan data.
Boleh melakukan operasi khas seperti membaca, menyimpan dan menulis.
bfile Tiada Fail objek binari besar yang disimpan di luar pangkalan data Panjang maksimum ialah 4GB.
Jenis LOB luaran ini merekodkan perubahan melalui pangkalan data, tetapi penyimpanan khusus data dilakukan di luar pangkalan data.
Oracle 8i boleh membaca dan menanyakan BFILE, tetapi tidak boleh menulis.
Saiz ditentukan oleh sistem pengendalian.
Jenis data ialah atribut dalam lajur atau prosedur tersimpan.
Jenis data yang disokong oleh Oracle boleh dibahagikan kepada tiga kategori asas: jenis data aksara, jenis data berangka dan jenis data yang mewakili data lain.
Jenis data aksara
CHAR Jenis data char menyimpan nilai aksara panjang tetap. Jenis data CHAR boleh mengandungi 1 hingga 2000 aksara. Jika tiada panjang dinyatakan secara eksplisit untuk CHAR, panjang lalainya ditetapkan kepada 1. Jika nilai diberikan kepada pembolehubah jenis CHAR dan panjangnya kurang daripada panjang yang ditentukan, Oracle akan mengisinya secara automatik dengan ruang.
VARCHAR2 menyimpan rentetan yang boleh dipanjangkan. Walaupun panjang pembolehubah data VARCHAR2 juga mesti ditentukan, panjang ini merujuk kepada panjang maksimum tugasan pembolehubah dan bukannya panjang tugasan sebenar. Tidak perlu mengisi ruang. Boleh ditetapkan sehingga 4000 aksara. Oleh kerana jenis data VARCHAR2 hanya menyimpan aksara yang diberikan kepada lajur (tanpa ruang), VARCHAR2 memerlukan ruang storan yang kurang daripada jenis data CHAR.
Oracle mengesyorkan menggunakan VARCHAR2
Jenis data NCHAR dan NVARCHAR2 NCHAR dan NVARCHAR2 masing-masing menyimpan rentetan panjang tetap dan panjang berubah, tetapi mereka menggunakan set aksara yang berbeza daripada jenis lain dalam pangkalan data. Apabila mencipta pangkalan data, anda perlu menentukan set aksara yang digunakan untuk mengekod data dalam data. Anda juga boleh menentukan set aksara tambahan [iaitu, set bahasa tempatan]. Lajur jenis NCHAR dan NVARCHAR2 menggunakan set aksara sekunder. Lajur jenis NCHAR dan NVARCHAR2 menggunakan set aksara sekunder.
Dalam Oracle 9i, panjang lajur NCHAR dan NVARCHAR2 boleh dinyatakan dalam aksara dan bukannya bait.
Jenis data LONG long boleh menyimpan 2GB data aksara dan diwarisi daripada versi terdahulu. Sekarang jika anda menyimpan sejumlah besar data, Oracle mengesyorkan menggunakan jenis data CLOB dan NCLOB. Terdapat banyak sekatan untuk menggunakan jenis LONG dalam jadual dan pernyataan SQL.
Jenis data CLOB dan NCLOB CLOB dan NCLOB boleh menyimpan sehingga 4GB data aksara. Jenis data NCLOB boleh menyimpan data NLS.
Jenis data nombor
Oracle menggunakan format dalaman standard, panjang berubah-ubah untuk menyimpan nombor. Format dalaman ini boleh mempunyai sehingga 38 bit ketepatan.
Jenis data NUMBER boleh mempunyai dua kelayakan, seperti: lajur NUMBER (ketepatan, skala). ketepatan mewakili bilangan digit bererti dalam nombor itu. Jika ketepatan tidak dinyatakan, Oracle akan menggunakan 38 sebagai ketepatan. Skala mewakili bilangan digit di sebelah kanan titik perpuluhan Skala ditetapkan kepada 0 secara lalai. Jika skala ditetapkan kepada nombor negatif, Oracle akan membundarkan nombor itu kepada bilangan digit yang ditentukan di sebelah kiri titik perpuluhan.
Jenis data tarikh
Format tarikh standard Oracle ialah: DD-MON-YY HH:MI:SS
Dengan mengubah suai parameter instance NLS_DATE_FORMAT, Anda boleh menukar format tarikh yang disisipkan dalam keadaan. Semasa sesi, anda boleh mengubah suai tarikh melalui arahan Alter session sql, atau mengemas kini nilai tertentu dengan menggunakan parameter dalam ungkapan TO_DATE bagi pernyataan sql.
Jenis data lain
RAW dan LONG RAW Jenis data RAW dan LONG RAW digunakan terutamanya untuk mentafsir pangkalan data. Apabila menentukan dua jenis ini, Oracle menyimpan data dalam bentuk bit. Jenis data RAW biasanya digunakan untuk menyimpan objek dalam format tertentu, seperti peta bit. Jenis data RAW boleh menduduki 2KB ruang, manakala jenis data RAW PANJANG boleh menduduki saiz 2GB.
ROWID ROWID ialah jenis lajur khas yang dipanggil pseudocolumn. Lajur pseudo ROWID boleh diakses seperti lajur biasa dalam pernyataan SQL SELECT. Setiap baris dalam pangkalan data Oracle mempunyai lajur pseudo. ROWID mewakili alamat baris dan lajur pseudo ROWID ditakrifkan dengan jenis data ROWID.
ROWID dikaitkan dengan lokasi tertentu pada pemacu cakera, oleh itu, ROWID ialah cara terpantas untuk mendapatkan baris. Walau bagaimanapun, ROWID baris berubah apabila pangkalan data dipunggah dan dimuat semula, jadi adalah disyorkan untuk tidak menggunakan nilai lajur pseudo ROWID dalam transaksi. Sebagai contoh, tiada sebab untuk menyimpan ROWID baris setelah aplikasi semasa selesai menggunakan rekod. Nilai lajur pseudo ROWID standard tidak boleh ditetapkan melalui mana-mana pernyataan SQL.
Lajur atau pembolehubah boleh ditakrifkan sebagai jenis data ROWID, tetapi Oracle tidak dapat menjamin bahawa nilai lajur atau pembolehubah ialah ROWID yang sah.
Jenis data LOB (Objek Besar), yang boleh menjimatkan 4GB maklumat. LOB mempunyai tiga jenis berikut:
, yang hanya boleh menyimpan data aksara
, menyimpan data set aksara bahasa tempatan
dan menyimpan data dalam maklumat binari
Anda boleh menentukan sama ada data LOB disimpan dalam pangkalan data Oracle atau dihalakan ke fail luaran yang mengandungi data sekunder.
LOB boleh mengambil bahagian dalam transaksi. Data dalam LOB mesti diuruskan melalui pakej perisian terbina dalam DBMS_LOB PL/sql atau antara muka OGI.
Untuk memudahkan penukaran jenis data LONG kepada LOB, Oracle 9i menyertakan beberapa fungsi yang menyokong kedua-dua LOB dan LONG, termasuk pilihan baharu untuk pernyataan ALTER TABLE yang membenarkan penukaran automatik jenis data LONG kepada LOB.
BFILE
Jenis data BFILE digunakan sebagai penunjuk kepada fail yang disimpan di luar pangkalan data Oracle.
Jenis XML
Sebagai sebahagian daripada sokongannya untuk XML, Oracle 9i menyertakan jenis data baharu, Jenis XML. Lajur yang ditakrifkan sebagai XMLType akan menyimpan dokumen XML dalam lajur LOB aksara. Terdapat banyak fungsi terbina dalam yang membolehkan anda mengekstrak nod individu daripada dokumen dan mencipta indeks pada mana-mana nod dalam dokumen Jenis XML.
Dari Oracle 8 dan seterusnya, pengguna boleh menentukan jenis data kompleks mereka sendiri, yang terdiri daripada jenis data asas Oracle.
AnyType, AnyData dan AnyDataSet
Oracle termasuk 3 jenis data baharu untuk mentakrifkan struktur data di luar jenis data sedia ada. Setiap jenis data ini mesti ditakrifkan menggunakan unit program supaya Oracle9i tahu cara mengendalikan pelaksanaan khusus jenis ini.
Penukaran jenis
Oracle akan menukar jenis data tertentu secara automatik kepada jenis data lain Penukaran bergantung pada pernyataan SQL yang merangkumi nilai.
Penukaran data juga boleh dilakukan secara eksplisit melalui fungsi penukaran jenis Oracle.
Sambungan dan perbandingan
Pada kebanyakan platform, operator sambungan dalam Oracle sql diwakili oleh dua bar menegak (||). Penggabungan bergabung dengan dua nilai aksara. Fungsi penukaran jenis automatik Oracle membolehkan dua nilai angka digabungkan.
NULL
Nilai NULL ialah salah satu ciri penting pangkalan data hubungan. Malah, NULL tidak mewakili sebarang nilai, ia bermakna tiada nilai. Jika anda ingin mencipta lajur jadual yang mesti mempunyai nilai, anda harus menentukannya sebagai NOT NULL, yang bermaksud bahawa lajur tidak boleh mengandungi nilai NULL.
Sebarang jenis data boleh diberikan nilai NULL. Nilai NULL memperkenalkan logik tiga keadaan operasi SQL. Jika satu sisi perbandingan ialah nilai NULL, maka tiga keadaan akan muncul: TRUE, FALSE dan tidak kedua-duanya.
Oleh kerana nilai NULL tidak sama dengan 0 atau mana-mana nilai lain, menguji sama ada data tertentu ialah nilai NULL hanya boleh dilakukan melalui pengendali hubungan IS NULL.
Nilai NULL amat sesuai untuk situasi berikut: apabila lajur belum diberikan nilai. Jika anda memilih untuk tidak menggunakan nilai NULL, anda mesti menetapkan nilai kepada semua lajur baris. Ini secara berkesan menghapuskan kemungkinan lajur tidak memerlukan nilai dan nilai yang diberikan kepadanya dengan mudah boleh disalahertikan. Keadaan ini boleh mengelirukan pengguna akhir dan membawa kepada keputusan operasi kumulatif yang salah.
Tutorial yang disyorkan: "Tutorial Video Oracle"
Atas ialah kandungan terperinci Apakah jenis medan dalam Oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!