cari
Rumahpangkalan dataOracleApakah kaedah untuk memberikan nilai kepada pembolehubah dalam prosedur tersimpan Oracle?

Apakah kaedah untuk memberikan nilai kepada pembolehubah dalam prosedur tersimpan Oracle?

Jan 25, 2022 pm 04:57 PM
oracletugasan berubah-ubahprosedur tersimpan

Kaedah untuk memberikan nilai kepada pembolehubah: 1. Gunakan ":=" untuk menetapkan nilai secara langsung, sintaksnya ialah "nama pembolehubah:=value;" 2. Gunakan medan "pilih jadual ke dalam pembolehubah dari penyataan" jadual; 3. Gunakan penyataan " laksanakan rentetan pernyataan sql segera ke dalam pembolehubah".

Apakah kaedah untuk memberikan nilai kepada pembolehubah dalam prosedur tersimpan Oracle?

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Oracle 11g, komputer Dell G3.

Cara mengisytiharkan dan menetapkan pembolehubah dalam prosedur tersimpan Oracle

1. 3 cara untuk mengisytiharkan pembolehubah

Bezakan mengikut kaedah pengisytiharan jenis data

Kaedah 1: Istihar terus jenis data

Format: jenis data nama ubah (saiz)

V_START_DATE VARCHAR2(19);
v_num number;

 Nota:

Apabila ditetapkan kepada jenis rentetan, saiz perlu ditentukan, jika tidak, ralat akan dilaporkan; pengisytiharan pembolehubah mestilah dalam kekunci "mulakan" Jalankan sebelum perkataan.

Kaedah 2: Gunakan pernyataan %TYPE

--错误用法
BEGIN
v_sql varchar2(100) := 'SELECT ORGSEQ FROM BASE_ORG_INFO where orgcode=to_char(410621101233)';

Format: nama jadual nama pembolehubah. Nama medan %TYPEMaksud: Jenis data pembolehubah adalah konsisten dengan jenis data medan yang ditentukan dalam jadual yang ditentukan

Kaedah 3: Gunakan pernyataan %ROWTYPE

Format: nama pembolehubah nama jadual % ROWTYPE
V_ORGSEQ BASE_ORG_INFO.ORGSEQ%TYPE;

Maksud : Jenis data pembolehubah ini konsisten dengan jenis data rekod baris yang ditentukan (semua medan) jadual yang ditentukan

Ringkasan:

--VIRTUAL_CARD表整行数据
V_ROW_VIRTUAL_CARD VIRTUAL_CARD%ROWTYPE; 
Dalam prosedur tersimpan, apabila mengisytiharkan pembolehubah, Tidak perlu menggunakan kata kunci "DECLARE"; ;

Pembolehubah mesti digunakan sebelum menggunakan pernyataan.

2 cara penugasan berubah

Kaedah 1: Tugasan langsung, gunakan ":="

Syarat penggunaan: terpakai pada dua cara pertama untuk mengisytiharkan pembolehubah.

Penjelasan:

Pembolehubah tidak boleh diikuti secara langsung dengan penyataan sql tidak akan dilaksanakan Anda boleh merujuk kepada kaedah tiga.

 

Pengisytiharan pembolehubah dan tugasan boleh dilakukan bersama.
V_ORGID :=  '110';  

Kaedah 2: pilih medan jadual ke dalam pembolehubah daripada jadual

--错误用法
V_ORGSEQ := SELECT ORGSEQ INTO V_ORGSEQ FROM BASE_ORG_INFO;
--正确用法
V_ORGSEQ := 'SELECT ORGSEQ INTO V_ORGSEQ FROM BASE_ORG_INFO';
Variasi 1: Tanya medan tertentu bagi jadual yang ditentukan

Syarat penggunaan: Dua cara pertama untuk mengisytiharkan pembolehubah boleh digunakan

--正确用法
v_sql varchar2(100) := 'SELECT ORGSEQ FROM BASE_ORG_INFO where orgcode=to_char(410621101233)';
BEGIN
 /* 具体业务 */
END;

Variasi 2: Tanya semua medan jadual yang ditentukan

Syarat penggunaan:

Hanya terpakai kepada cara ketiga untuk mengisytiharkan pembolehubah

Penerangan:

--根据医疗机构ID查询对应的父机构的机构序列
SELECT ORGSEQ INTO V_ORGSEQ FROM BASE_ORG_INFO
 WHERE ORGID =
       (SELECT PARENTORGID FROM BASE_ORG_INFO WHERE ORGID = V_ORGID);

Hasil pertanyaan hanya boleh mengembalikan satu rekod;

Medan jadual yang ditanya mestilah semua medan dalam jadual.

Contoh ralat:
--将id=5120的VIRTUAL_CARD表数据赋值给变量V_ROW_VIRTUAL_CARD
SELECT * INTO V_ROW_VIRTUAL_CARD FROM VIRTUAL_CARD T where t.id = 5120;

Kaedah 3: laksanakan rentetan pernyataan sql segera ke dalam pembolehubah

3. Memanggil pembolehubah

--错误举例一:查询的是所有表记录
SELECT * INTO V_ROW_VIRTUAL_CARD FROM VIRTUAL_CARD T;
--错误举例二:查询的是该表的多个字段
SELECT t.id,t.name INTO V_ROW_VIRTUAL_CARD FROM VIRTUAL_CARD T;  
Secara umumnya, pembolehubah hanya mempunyai tiga senario penggunaan ini: tugasan, pertimbangan logik, operasi aritmetik; digunakan sebagai lajur pertanyaan

Bagaimana untuk memanggil pembolehubah yang diisytiharkan menggunakan %ROWTYPE?
declare/* 存储过程,不需要声明 */
  v_sql varchar2(100);
  V_ORGSEQ varchar2(100);
begin
  v_sql := 'SELECT ORGSEQ FROM BASE_ORG_INFO where orgcode=to_char(410621101233)';
  --V_ORGSEQ赋值
  execute immediate v_sql INTO V_ORGSEQ;
  --打印结果
  DBMS_OUTPUT.put_line(V_ORGSEQ);
END;

Menggunakan kaedah "nama pembolehubah. medan jadual", anda boleh mendapatkan data yang diwakili oleh lajur yang ditentukan (mana-mana lajur) baris yang ditentukan (baris kembali) dalam jadual. Tutorial yang disyorkan: "Tutorial Oracle

"

Atas ialah kandungan terperinci Apakah kaedah untuk memberikan nilai kepada pembolehubah dalam prosedur tersimpan Oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tujuan Oracle: Penyelesaian Perniagaan dan Pengurusan DataTujuan Oracle: Penyelesaian Perniagaan dan Pengurusan DataApr 13, 2025 am 12:02 AM

Oracle membantu perniagaan mencapai transformasi digital dan pengurusan data melalui produk dan perkhidmatannya. 1) Oracle menyediakan portfolio produk yang komprehensif, termasuk sistem pengurusan pangkalan data, sistem ERP dan CRM, membantu perusahaan mengautomasikan dan mengoptimumkan proses perniagaan. 2) Sistem ERP Oracle seperti E-BusinessSuite dan FusionApplications menyedari automasi proses perniagaan akhir-ke-akhir, meningkatkan kecekapan dan mengurangkan kos, tetapi mempunyai kos pelaksanaan dan penyelenggaraan yang tinggi. 3) OracLedatabase menyediakan pemprosesan data konkurensi tinggi dan ketersediaan yang tinggi, tetapi mempunyai kos pelesenan yang tinggi. 4) Pengoptimuman prestasi dan amalan terbaik termasuk penggunaan rasional pengindeksan dan teknologi pembahagian, penyelenggaraan pangkalan data biasa dan pematuhan dengan spesifikasi pengekodan.

Cara Menghapus Kegagalan Perpustakaan OracleCara Menghapus Kegagalan Perpustakaan OracleApr 12, 2025 am 06:21 AM

Langkah -langkah untuk memadam pangkalan data yang gagal selepas Oracle gagal membina perpustakaan: Gunakan nama pengguna sys untuk menyambung ke contoh sasaran. Gunakan pangkalan data drop untuk memadam pangkalan data. Pangkalan Data Permintaan v $ untuk mengesahkan bahawa pangkalan data telah dipadamkan.

Cara membuat kursor di Oracle LoopCara membuat kursor di Oracle LoopApr 12, 2025 am 06:18 AM

Di Oracle, gelung gelung boleh membuat kursor secara dinamik. Langkah -langkahnya ialah: 1. Tentukan jenis kursor; 2. Buat gelung; 3. Buat kursor secara dinamik; 4. Melaksanakan kursor; 5. Tutup kursor. Contoh: Kursor boleh dibuat kitaran demi litar untuk memaparkan nama dan gaji 10 pekerja teratas.

Cara Mengeksport Oracle ViewCara Mengeksport Oracle ViewApr 12, 2025 am 06:15 AM

Pandangan Oracle boleh dieksport melalui utiliti EXP: log masuk ke pangkalan data Oracle. Mulakan utiliti EXP, menentukan nama paparan dan direktori eksport. Masukkan parameter eksport, termasuk mod sasaran, format fail, dan ruang meja. Mula mengeksport. Sahkan eksport menggunakan utiliti IMPDP.

Cara Menghentikan Pangkalan Data OracleCara Menghentikan Pangkalan Data OracleApr 12, 2025 am 06:12 AM

Untuk menghentikan pangkalan data Oracle, lakukan langkah -langkah berikut: 1. Sambungkan ke pangkalan data; 2. Shutdown segera; 3. Shutdown membatalkan sepenuhnya.

Apa yang perlu dilakukan sekiranya log oracle penuhApa yang perlu dilakukan sekiranya log oracle penuhApr 12, 2025 am 06:09 AM

Apabila fail log Oracle penuh, penyelesaian berikut boleh diterima pakai: 1) fail log lama bersih; 2) meningkatkan saiz fail log; 3) meningkatkan kumpulan fail log; 4) menyediakan pengurusan log automatik; 5) mengukuhkan pangkalan data. Sebelum melaksanakan sebarang penyelesaian, adalah disyorkan untuk membuat sandaran pangkalan data untuk mengelakkan kehilangan data.

Cara membuat Oracle Dynamic SQLCara membuat Oracle Dynamic SQLApr 12, 2025 am 06:06 AM

Kenyataan SQL boleh dibuat dan dilaksanakan berdasarkan input runtime dengan menggunakan SQL dinamik Oracle. Langkah -langkah termasuk: menyediakan pemboleh ubah rentetan kosong untuk menyimpan penyataan SQL yang dihasilkan secara dinamik. Gunakan pernyataan melaksanakan segera atau sediakan untuk menyusun dan melaksanakan pernyataan SQL dinamik. Gunakan pembolehubah bind untuk lulus input pengguna atau nilai dinamik lain ke SQL dinamik. Gunakan melaksanakan segera atau laksanakan untuk melaksanakan pernyataan SQL yang dinamik.

Apa yang Harus Dilakukan Sekiranya Oracle DeadlockApa yang Harus Dilakukan Sekiranya Oracle DeadlockApr 12, 2025 am 06:03 AM

Panduan Pengendalian Oracle Deadlock: Kenal pasti kebuntuan: Semak kesilapan "Deadlock Dikesan" dalam fail log. Lihat maklumat kebuntuan: Gunakan pakej get_deadlock atau paparan v $ lock untuk mendapatkan sesi kebuntuan dan maklumat sumber. Menganalisis Rajah Deadlock: Menjana rajah kebuntuan untuk memvisualisasikan kunci memegang dan situasi menunggu dan menentukan punca utama kebuntuan. Sesi Rollback Deadlock: Gunakan perintah sesi membunuh untuk melancarkan sesi, tetapi ia boleh menyebabkan kehilangan data. Siklus Deadlock Interrupt: Gunakan arahan sesi putus untuk memutuskan sambungan sesi dan lepaskan kunci yang dipegang. Mencegah kebuntuan: Mengoptimumkan pertanyaan, menggunakan penguncian optimis, menjalankan pengurusan transaksi, dan kerap

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan