1. 程式人生 > >【Oracle】帶引數的儲存過程

【Oracle】帶引數的儲存過程

1、建立儲存過程

create procedure updatedemo  (ageparam IN number)
as
begin
update demo set age = ageparam;
commit;
end;
/

2、傳參執行

begin
updatedemo(20);
end;
/

3、為儲存過程設定引數的預設值

3.1建立儲存過程

create or replace procedure InsertDemo(id in char,name in char default '路人',age in char default '30',sex in char) 
as
begin insert into demo values(id,name,age,sex);
commit; end; /

3.2、執行該儲存過程

begin
InsertDemo('5','孫尚香',null,'female');
end;
/

注意1

這裡我出現了一個問題,就是我的表的欄位是id,name,sex,age;但是我定義的儲存過程是id,
name,age,sex;最後兩個欄位的位置跟表結構不一樣;插入的時候,插入的核心是儲存過程裡的

insert into demo values(id,name,age,sex);

這句話,然後傳參的順序絲毫不會影響到insert表的順醋,插入式,系統會將你的變數id,name
age,sex插入到欄位id,name,age,sex中,這裡要注意,前4個是引數,後4個是欄位;

注意2

當儲存過程定義了預設值後,表也定義了預設值,表的預設值優先順序高於儲存過程;

相關推薦

Oracle引數儲存過程

1、建立儲存過程 create procedure updatedemo (ageparam IN number) as begin update demo set age = ageparam; commit; end; / 2、傳參執行

OraclePL/SQL 儲存過程 顯式遊標、隱式遊標、動態遊標

  【Oracle】PL/SQL 顯式遊標、隱式遊標、動態遊標 2013年06月17日 09:02:51 AlphaWang 閱讀數:13009更多 個人分類: 【Database】 在PL/SQL塊中執行SELECT、INSERT、DELET

T-SQL 引數儲存過程

建立帶引數的儲存過程 1 use StudentManager 2 go 3 if exists(select * from sysobjects where name='usp_ScoreQuery4') 4 drop procedure usp_ScoreQuery4 5 go 6 c

MySQL有關引數儲存過程

前言小案例:       輸入輸出引數:記錄MYSQL儲存過程中的關鍵語法:DELIMITER // 宣告語句結束符,用於區分; CEATE PROCEDURE demo_in_parameter(IN p_in int) 宣告儲存過程 BEGIN …. END 儲存過程開始

oracle輸入輸出引數儲存過程(包括sql分頁功能)

記錄一下,免得以後忘記了又要到處去找。 begin /*這裡不能直接執行select語句但可以直接執行update、delete、insert語句*/ end裡面不能接執行select語句,宣告會話級臨時表必須有“execute immediate 'TRUNCATE TABLE 表名';”這一句不然其他的s

Oracle PL/SQL程式設計-儲存過程優缺點及實現過程1

如果儲存過程名已經被佔用,兩種方式:1.修改儲存過程名;2新增關鍵字 or replace :表示如果有yao_prol,就替換。eg:SQL> create or replace procedure yao_prol is  2      begin  3      insert into YAO_T

Oracle定時任務執行儲存過程引數

儲存過程: create or replace procedure pro_test (retCode out number, retMsg out varchar2) is  vcrm v_prod_inst%ROWTYPE; TYPE ref_cursor_type I

Oracle-call 和 exec呼叫儲存過程的區別

在cmd.exe視窗執行命令sqlplus / as sysdba啟動sqlplus exec是sqlplus的命令,只能在sqlplus中使用。 call是sql命令,任何工具都可以使用,c

OracleUTL_HTTP 傳送http請求,定時任務job+儲存過程PROCEDURE

總覺得這種方式心裡用著沒譜,因為對他並不瞭解。比如是否涉及到資源釋放啊,異常捕獲啊,是否能穩定高併發執行啊。大家也可以看一下  幫我優化優化。 首先1·要使用 --開啟Oracle ACL許可權 /*

Oracle存儲過程之完整篇

lba 成功 語句 color dbms 名稱 ron 程序 參數說明 1.語法 create [or replace] procedure pro_name[(parameter1,parameter2,...)] is|as begin plsql_senten

python修改檔案引數修改資料夾名、資料夾裡檔名、檔案內容等

原始碼如下: # -*- coding: utf-8 -*- #coding=utf-8 ''' 指令碼說明 功能:在新增新遙控時,需要手動改檔名和檔案內容。現執行指令碼可自動修改(碼值仍需要手動修改) 使用:python ir_modify.py "原有的檔名"

機房重構組合查詢--儲存過程

定義 儲存過程(Stored Procedure)是在大型資料庫系統中,一組為了完成特定功能的SQL 語句集,儲存在資料庫中,經過第一次編譯後再次呼叫不需要再次編譯,使用者通過指定儲存過程的名字並給出引數(如果該儲存過程帶有引數)來執行它。儲存過程是資料庫中的一個重要物件。 建立

Spring Data AccessSimplJdbcCall呼叫儲存過程

SimpleJdbcCall 呼叫儲存過程 SimpleJdbcCall主要用來進行呼叫儲存過程,這個方法使用起來也比較簡單,先通過一個比較簡單的示例來熟悉一下api import org.springframework.context.ApplicationC

機房重構組合查詢—儲存過程

        儲存過程(Stored Procedure)是在大型資料庫系統中,一組為了完成特定功能的SQL 語句集,儲存在資料庫中,經過第一次編譯後再次呼叫不需要再次編譯,使用者通過指定儲存過程的

深度學習3keras:儲存keras學習好的深度神經網路模型引數為二進位制和txt檔案

http://blog.csdn.net/linmingan/article/details/50906141 由於工程需要,儲存為hdf5的keras權值在c/c++中的讀取比較不方便。因此將keras中的權值剝離出來,並儲存為二進位制檔案或者txt檔案。在進行程式碼的編

Oracle資料庫儲存JSON資料型別的大檔案;

一、問題 因為需要在資料庫儲存pdf的解析檔案,需要用大的資料型別儲存資料內容,所以需要使用CLOB資料檔案型別; 二、方法 資料庫使用CLOB型別的資料,使用方法和其他的一樣,是Character Large Object 的縮寫;在使用Mybatis

Oracle詳解Oracle中NLS_LANG變量的使用

make fault tro territory font pin onclick 添加 其中 目錄結構: // contents structure [-] 關於NLS_LANG參數 NSL_LANG常用的值 在MS-DOS模式和Batch模式中

Oracle oracle數據庫的並發初步理解

數據交互 空閑 details cti 但是 art 網速慢 可見 就會 先從一個列子來說:我們經常聽到說某某網站的每天訪問用戶數有幾十,幾千,幾百萬甚至上千萬,同時在線用戶數有幾萬,幾十萬的。從這個列子我們來分析,數據庫並發的概念。首先,這兒有兩個名詞,一個是每天訪問的用

OracleOracle的內外連接

close 結構 class 編號 開始時間 eve 時間 條件 rom 1,Oracle中的內外連接 1,內連接 內連接就是符合條件的數據被選中,不符合條件的數據被過濾掉。 1,1,1 等值連接 先看看需要使用的“s_emp”表結構:

Oracle淺析Oracle中的事務

ase count 他會 session get 允許 update 查看 操作 1. 什麽是事務 在數據庫中事務是工作的邏輯單元,一個事務是由一個或多個完成一組的相關行為的SQL語句組成,通過事務機制確保這一組SQL語句所作的操作要麽都成功執行,完成整個工作單元操作,要