『壹』 ORACLE 定義存儲過程時,什麼時候需要使用DECLARE 可以不用它嗎 請不要隨便復制粘貼,請舉例說
oracle 的存儲過程里沒有declare的語法,觸發器和plsql塊才是declare
如果要定義變數,後面直接跟is的
CREATE OR REPLACE PROCEDURE c(xxx)
IS
para number;
BEGIN
end;
『貳』 oracle 裡面declare怎麼用啊
1、啟動plsql並登陸oracle資料庫。
『叄』 oracle動態執行sql語句報錯請各位大蝦幫忙看一下哪裡出錯了!
你的這句sql有些問題。你這里的count('username') 幹嘛要加引號啊?
DECLARE
sql_string VARCHAR2(100);
BEGIN
sql_string := 'select count(username) from sys.user_users' ;
dbms_output.put_line( sql_string);
EXECUTE IMMEDIATE sql_string;
END;
這樣就可以了。
如果你的username是想動態的反映當前的登錄用戶的話要改成user。如下:
DECLARE
sql_string VARCHAR2(100);
BEGIN
sql_string := 'select count('||user||') from sys.user_users' ;
dbms_output.put_line( sql_string);
EXECUTE IMMEDIATE sql_string;
END;
但是也不能執行成功因為user_users' 裡面不一定有這個列。
『肆』 oracle存儲過程循環執行SQL語句
實現方式錯了,批量移動數據應該使用Cursor,而不是像分頁那樣每次都查詢。
每次都查詢可能會導致重復數據。
正確方式應該是打開一個Cursor,循環Cursor來插入,使用計數器來控制每次COMMIT的行數:
declare
TYPE R_CURSOR IS REF CURSOR;
i number;
a1_cursor R_CURSOR;
a1_row A1%ROWTYPE;
begin
open a1_cursor FOR
select ID, NAME from A1;
i := 0;
loop
fetch a1_cursor
into a1_row;
exit when a1_cursor%notfound;
INSERT INTO A2 VALUES a1_row;
i := i + 1;
if i >= 5 then
commit;
i := 0;
end if;
end loop;
close a1_cursor;
commit;
end;
『伍』 使用oracle 11g 時寫pl/sql 語句declare..begin..and.. 執行後連個提示都沒有,怎樣顯示出提示和結果
define _editor='D:Program Files (x86)IDM Computer SolutionsUltraEditUedit32.exe'
set serveroutput on size 1000000
set num 38
set trimspool on
set long 5000
set linesize 450
set pagesize 9999
set NULL<null>
column plan_plus_exp format a70
column global_name new_value gname
set termout off
define gname=idle
column global_name new_value gname
select lower(user)||'@'||substr(global_name,1,decode(dot,0,length(global_name),dot-1)) global_name
from(select global_name,instr(global_name,'.') dot from global_name);
set sqlprompt '&gname>'
set termout on
set time on
set timing on
把這個腳本保存為login.sql, 放在
目錄下(如圖),也可以設置SQL_PATH變數(好像是這個名字,忘記了),第一行可以修改為自己常用的文本編輯器的程序目錄(為ed命令所用)。
其餘的不解釋了。名字一定要為login.sql。
『陸』 oracle里這種declare語句塊叫什麼傢伙
declare age number(4);--聲明一個參數a,類型為number,類型長度為4,操作方法如下:
1、首先在oracle資料庫中,應用%type類型讀取訂單信息表中 ,購買的訂單的總金額和訂單數量。
『柒』 oracle pl/sql 語句declare..begin..and.. 執行後沒有顯示結果,只有pl/sql執行成功,怎樣顯示出結果
可以通過dbms_output.put_line()將結果輸出
括弧中寫字元串變數,或字元串。
執行後,在sql窗口的 輸出頁面查看輸出結果。
解決後記得採納。
『捌』 linu下進入oracle用戶提示declare什麼東西而且無法使用sqlpuls dbca等命令。。。
su - oracle
export PATH=$ORACLE_HOME/bin:$PATH
當然你要配置ORACLE_HOME
如果你連ORACLE_HOME都不會配置,建議還是先別安裝了,先看看oracle安裝的基礎知識在安裝,不然即使解決了這個問題,以後還會出現很多問題。仍然解決不了。
『玖』 oracle 視圖sql語句怎麼寫
oracle中,創建視圖的基本方式是:
create or replace view 視圖名稱 as + 查詢語句
舉例如下:
--1.新建dept表的視圖
createorreplaceforceviewtest_viewas
select*fromdept;
--2.查看視圖
select*fromtest_view;
『拾』 declare 在Oracle中聲明變數 這么使用變數
[TEST1@orcl#15-4月 -10] SQL>set serveroutput on
[TEST1@orcl#15-4月 -10] SQL>declare
2 v_num number;
3 begin
4 select count(*) into v_num from tab;
5 dbms_output.put_line(v_num);
6 end;
7 /
15
PL/SQL 過程已成功完成。