Oracle 人民币小写转大写
练手用用,写得很复杂 无 CREATE OR REPLACE FUNCTION PARSE_FEE_CHINESE(N_FEE IN NUMBER) RETURN VARCHAR2 AS V_CHINESE_NUMBER VARCHAR2(30) := '零壹贰叁肆伍陆柒捌玖'; V_CHINESE_POINT VARCHAR2(30) := '分角元拾佰仟万亿'; V_RESULT VARCHAR2(100) :=
练手用用,写得很复杂CREATE OR REPLACE FUNCTION PARSE_FEE_CHINESE(N_FEE IN NUMBER) RETURN VARCHAR2 AS V_CHINESE_NUMBER VARCHAR2(30) := '零壹贰叁肆伍陆柒捌玖'; V_CHINESE_POINT VARCHAR2(30) := '分角元拾佰仟万亿'; V_RESULT VARCHAR2(100) := ''; V_TEMP VARCHAR2(100); V_FLAG VARCHAR2(10); V_MAIN VARCHAR2(40); V_SUB VARCHAR2(20); N_TEMPFEE NUMBER(30, 2); C_CH1 CHAR(1); C_CH2 VARCHAR2(10); N_LENGTH NUMBER(10) := 0; I NUMBER(10) := 0; J NUMBER(10) := 0; T NUMBER(10) := 0; BEGIN IF N_FEE < 0 THEN V_FLAG := '负'; N_TEMPFEE := -1 * N_FEE; ELSE N_TEMPFEE := N_FEE; V_FLAG := ''; END IF; SELECT TRIM(TO_CHAR(ROUND(N_TEMPFEE, 2), '9999999999999999999.99')) INTO V_TEMP FROM DUAL; IF N_FEE = 0 THEN V_RESULT := '零元整'; ELSE --先处理整数,再处理小数 V_MAIN := SUBSTR(V_TEMP, 1, INSTR(V_TEMP, '.') - 1); V_SUB := SUBSTR(V_TEMP, INSTR(V_TEMP, '.') + 1); N_LENGTH := LENGTH(V_MAIN); I := N_LENGTH; T := 0; IF V_MAIN IS NULL OR '0' = V_MAIN THEN V_RESULT := '零' || V_RESULT; END IF; WHILE I > 0 LOOP I := I - 1; T := T + 1; C_CH1 := SUBSTR(V_MAIN, I + 1); V_MAIN := SUBSTR(V_MAIN, 1, I); J := TO_NUMBER(C_CH1); IF T = 5 OR t= 13 THEN V_RESULT := '万' || V_RESULT; ELSIF T = 9 THEN IF '万' = SUBSTR(V_RESULT, 1, 1) THEN V_RESULT := '亿' || SUBSTR(V_RESULT, 2); ELSE V_RESULT := '亿' || V_RESULT; END IF; END IF; IF '0' = C_CH1 THEN IF I <> N_LENGTH AND '零' <> C_CH2 THEN IF T <> 5 AND T <> 9 AND T <> 13 THEN V_RESULT := '零' || V_RESULT; ELSIF T = 5 OR T = 9 OR t=13 THEN V_RESULT := SUBSTR(V_RESULT, 1, 1) || '零' || SUBSTR(V_RESULT, 2); END IF; C_CH2 := SUBSTR(V_CHINESE_NUMBER, J, 1); END IF; ELSE J := MOD(T, 4); IF T <> 5 AND T <> 9 AND T <> 13 THEN IF J <> 1 THEN IF J = 0 THEN J := J + 4; END IF; J := J + 2; V_RESULT := SUBSTR(V_CHINESE_POINT, J, 1) || V_RESULT; END IF; END IF; J := TO_NUMBER(C_CH1) + 1; C_CH2 := SUBSTR(V_CHINESE_NUMBER, J, 1); V_RESULT := C_CH2 || V_RESULT; END IF; END LOOP; V_RESULT := V_RESULT || '元'; IF V_SUB IS NULL OR LENGTH(TRIM(V_SUB)) <= 0 OR TO_NUMBER(V_SUB) = 0 THEN V_RESULT := V_RESULT || '整'; ELSE C_CH1 := SUBSTR(V_SUB, 1, 1); J := TO_NUMBER(C_CH1) + 1; C_CH2 := SUBSTR(V_CHINESE_NUMBER, J, 1); IF '0' = C_CH1 THEN V_RESULT := V_RESULT || C_CH2 ; ELSE V_RESULT := V_RESULT || C_CH2 || '角'; END IF; C_CH1 := SUBSTR(V_SUB, 2, 1); IF '0' <> C_CH1 THEN J := TO_NUMBER(C_CH1) + 1; C_CH2 := SUBSTR(V_CHINESE_NUMBER, J, 1); V_RESULT := V_RESULT || C_CH2 || '分'; END IF; END IF; END IF; V_RESULT := V_FLAG || V_RESULT; RETURN V_RESULT; END;

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Untuk menanyakan saiz ruang meja oracle, ikuti langkah -langkah berikut: Tentukan nama meja dengan menjalankan pertanyaan: pilih Tablespace_Name dari DBA_TableSpaces; Tanya saiz meja dengan menjalankan pertanyaan: pilih jumlah (bait) sebagai total_size, jumlah (bytes_free) sebagai tersedia_space, jumlah (bytes) - jumlah (bytes_free) sebagai digunakan_space dari dba_data_files di mana tablespace_

Kaedah Import Data: 1. Gunakan utiliti SQLLoader: Sediakan fail data, buat fail kawalan, dan jalankan SQLLoader; 2. Gunakan alat IMP/EXP: data eksport, data import. Petua: 1. Disyorkan SQL*loader untuk set data besar; 2. Jadual sasaran harus wujud dan perlawanan definisi lajur; 3. Selepas mengimport, integriti data perlu disahkan.

Nyahpasang Kaedah untuk kegagalan pemasangan Oracle: Tutup Perkhidmatan Oracle, Padam Fail Program Oracle dan Kekunci Pendaftaran, Nyahpasang pembolehubah persekitaran Oracle, dan mulakan semula komputer. Jika penyahpasang gagal, anda boleh menyahpasang secara manual menggunakan alat penyahpasang Oracle Universal.

Gunakan pernyataan ALTER Jadual, sintaks khusus adalah seperti berikut: alter table table_name Tambah column_name data_type [kekangan-klausa]. Di mana: Table_name adalah nama jadual, column_name adalah nama medan, data_type adalah jenis data, dan kekangan-fasal adalah kekangan pilihan. Contoh: Alter Table Pekerja menambah e -mel varchar2 (100) Tambahkan medan e -mel ke jadual pekerja.

Oracle menyediakan pelbagai kaedah pertanyaan deduplikasi: Kata kunci yang berbeza mengembalikan nilai yang unik untuk setiap lajur. Kumpulan oleh klausa mengumpulkan hasil dan mengembalikan nilai tidak berulang bagi setiap kumpulan. Kata kunci yang unik digunakan untuk membuat indeks yang mengandungi hanya baris unik, dan pertanyaan indeks akan secara automatik deduplicate. Fungsi row_number () memberikan nombor unik dan menapis hasil yang mengandungi hanya baris 1. Min () atau max () mengembalikan nilai tidak berulang dari lajur angka. Operator Intersect mengembalikan nilai -nilai bersama kedua -dua set hasil (tiada pendua).

Mewujudkan Jadual Oracle melibatkan langkah -langkah berikut: Gunakan sintaks Create Table untuk menentukan nama jadual, nama lajur, jenis data, kekangan, dan nilai lalai. Nama jadual harus ringkas dan deskriptif, dan tidak boleh melebihi 30 aksara. Nama lajur hendaklah menjadi deskriptif, dan jenis data menentukan jenis data yang disimpan dalam lajur. Kekangan tidak null memastikan bahawa nilai null tidak dibenarkan dalam lajur, dan klausa lalai menentukan nilai lalai untuk lajur. Kekangan utama utama untuk mengenal pasti rekod unik jadual. Kekangan utama asing menentukan bahawa lajur dalam jadual merujuk kepada kunci utama dalam jadual lain. Lihat penciptaan pelajar jadual sampel, yang mengandungi kunci utama, kekangan unik, dan nilai lalai.

Penyulitan Oracle View membolehkan anda menyulitkan data dalam pandangan, dengan itu meningkatkan keselamatan maklumat sensitif. Langkah -langkah termasuk: 1) mewujudkan kunci penyulitan induk (MEK); 2) mencipta pandangan yang disulitkan, menyatakan pandangan dan MEK untuk disulitkan; 3) Memberi kuasa pengguna untuk mengakses pandangan yang disulitkan. Bagaimana pandangan yang disulitkan berfungsi: Apabila permintaan pengguna untuk paparan yang disulitkan, Oracle menggunakan MEK untuk menyahsulit data, memastikan bahawa hanya pengguna yang diberi kuasa dapat mengakses data yang boleh dibaca.

Masalah Garbled Oracle boleh diselesaikan dengan memeriksa set aksara pangkalan data untuk memastikan ia sepadan dengan data. Tetapkan set aksara klien untuk memadankan pangkalan data. Tukar data atau ubah suai set aksara lajur untuk memadankan set aksara pangkalan data. Gunakan set aksara Unicode dan elakkan set aksara multibyte. Semak bahawa tetapan bahasa pangkalan data dan pelanggan betul.
