存儲過程is
A. 存儲過程中很多IS 是干什麼的
不是sql server吧
sql server的sp里沒有看到IS啊!
B. oracle存儲過程中,is和as有什麼區別
在存儲過程(procere)和函數(function)中沒有區別,在視圖(view)中只能用as不能用is,在游標(cursor)中只能用is不能用as。
C. oracle 存儲過程 as 和is 區別
第一個問題:is和as是可以互用的,用哪個都沒關系的
第二個問題:在外面
第三個問題:過程中沒有declare關鍵字,declare用在語句塊中
第四個問題:估計你看到的是做游標定義的東東,抑或者直接就一句sql。
D. 關於存儲過程的 as 和 is 問題
要是換成AS就要改成下面的寫法
CREATE PROCEDURE STUDENT_UPDATE
as
BEGIN
UPDATE STUDENT SET NAME = 'NULL'
WHERE ID IN
(
SELECT ID FROM STUDENT WHERE AGE < 20
);
COMMIT;
END;
go
E. 請問這句sql存儲過程的語句什麼is
1.存儲過程編譯器事先對存儲過程金星了語法檢查處理,避免了因sql語句語法不正確引起運行時出現異常的問題.
2.只在保存存儲過程時資料庫伺服器才進行編譯,以後每次執行存儲過程都不需要再進行重新編譯而一般的sql語句每執行一次就需要資料庫引擎重新編譯一次,所以使用存儲過程可以提高資料庫執行效率(補充:這點很有用,特別是感覺你的程序和資料庫相關有點慢時可以用這點,幫你程序運行的更快)
3.可以在定義存儲過程的時候直接檢查運行的結果是否正確,可視化的設計界面提高了效率.
4.避免了查詢字元串中包含單引號等特殊字元可能會出現的問題
5.一個項目中可能會多處用到相同的sql語句,使用存儲過程便於重用
6.修改靈活方便,當需要修改完成的功能時,只需要修改定義的存儲過程即可,不必單獨修改每一個引用.
F. oracle存儲過程中的關鍵字is、as究竟有什麼區別呀
1、單獨的FUNCTION, PROCEDURE 習慣用AS,PACKAGE 中的FUNCTION, PROCEDURE 用IS
2、
create [or replace] procere <過程名>
(
<參數1> [方式1] <數據類型1>,
<參數2> [方式2] <數據類型2>
)
is|as
PS/SQL過程體;
單獨的這么看is as 也沒區別
G. 如何編寫存儲過程
//創建存儲過程
CREATE PROCEDURE userData(
IN id INT
)
BEGIN
SELECT * from userdata WHERE userflag = id;
END;
其中IN是傳進去的變數;
drop procere userData;//銷毀這個存儲過程。
call userData(2) //調用存儲過程。
(7)存儲過程is擴展閱讀:
sql中的存儲過程及相關介紹:
CREATE PROCEDURE [擁有者.]存儲過程名[;程序編號]
[(參數#1,…參數#1024)]
[WITH
{RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}
]
[FOR REPLICATION]
AS 程序行
其中存儲過程名不能超過128個字。每個存儲過程中最多設定1024個參數
(SQL Server 7.0以上版本),參數的使用方法如下:
@參數名數據類型[VARYING] [=內定值] [OUTPUT]。
每個參數名前要有一個「@」符號,每一個存儲過程的參數僅為該程序內部使用,參數的類型除了IMAGE外,其他SQL Server所支持的數據類型都可使用。
[內定值]相當於我們在建立資料庫時設定一個欄位的默認值,這里是為這個參數設定默認值。[OUTPUT]是用來指定該參數是既有輸入又有輸出值的,也就是在調用了這個存儲過程時,如果所指定的參數值是我們需要輸入的參數。
同時也需要在結果中輸出的,則該項必須為OUTPUT,而如果只是做輸出參數用,可以用CURSOR,同時在使用該參數時,必須指定VARYING和OUTPUT這兩個語句。
參考資料來源:網路-儲存過程
H. 什麼是存儲過程
sql語句執行的時候要先編譯,然後執行。存儲過程就是編譯好了的一些sql語句。用的時候直接就可以用了。所以效率會高 一 存儲過程介紹 存儲過程是由流控制和SQL語句書寫的過程,這個過程經編譯和優化 後存儲在資料庫伺服器中,使用時只要調用即可。在ORACLE中,若干個 有聯系的過程可以組合在一起構成程序包。 使用存儲過程有以下的優點: * 存儲過程的能力大大增強了SQL語言的功能和靈活性。存儲過程可 以用流控制語句編寫,有很強的靈活性,可以完成復雜的判斷和較復雜的 運算。 * 可保證數據的安全性和完整性。 # 通過存儲過程可以使沒有許可權的用戶在控制之下間接地存取數據 庫,從而保證數據的安全。 # 通過存儲過程可以使相關的動作在一起發生,從而可以維護數據 庫的完整性。 * 再運行存儲過程前,資料庫已對其進行了語法和句法分析,並給出 了優化執行方案。這種已經編譯好的過程可極大地改善SQL語句的性能。 由於執行SQL語句的大部分工作已經完成,所以存儲過程能以極快的速度執 行。 * 可以降低網路的通信量。 * 使體現企業規則的運算程序放入資料庫伺服器中,以便: # 集中控制。 # 當企業規則發生變化時在伺服器中改變存儲過程即可,無須修改 任何應用程序。企業規則的特點是要經常變化,如果把體現企業規則的運 算程序放入應用程序中,則當企業規則發生變化時,就需要修改應用程序 工作量非常之大(修改、發行和安裝應用程序)。如果把體現企業規則的 運算放入存儲過程中,則當企業規則發生變化時,只要修改存儲過程就可 以了,應用程序無須任何變化。 不同資料庫存儲過程的寫法不一,在後面的講座中將分別介紹ORACLE 和SYBASE存儲過程的用法。 二 ORACLE 的存儲過程 ORACLE 創建存儲過程的語法為: create [or replace] procere 過程名 參數1 [in|out|in out] 數據類型 [,參數2 [in|out|in out] 數據類型]... pl/sql 語句 下面舉例說明ORACLE資料庫存儲過程的寫法和用法。 可以建立一個存儲過程,每當用戶修改資料庫的重要數據時,即把 用戶的用戶名、掌諍筒僮骼嘈圖鍬枷呂矗?nbsp; create procere update_log is begin insert into update_log_tab(use_name,update_date,operation) values(user,sysdate,'update' end; 可以在恰當的位置調用這個存儲過程來記錄用戶對表的修改。例如下面在 表sal_comm上建立一個修改觸發器,每當用戶修改此表後,用戶的名稱、修改 時間和操作即被記錄在了表update_log_tab中: create trigger audit_update after update on sal_comm for each row begin update_log end --三 Sybase的存儲過程 盡管Sybase存儲過程的功能和寫法與ORACLE類似,但他們之間還是 有一定的差別。下面講述SYBASE的存儲過程。 SYBASE可以用CREATE PROCere命令生成存儲過程: CREATE PROCere 存儲過程名 [;number] [[(] @parameter_name datatype [=default] [OUTput] [, @parameter_name datatype [=default] [OUTput]]...[)]] [WITH RECOMPILE] AS SQL_statements 下面是一個查詢作者編碼、名稱和生日的存儲過程: create proc p_auths @author_code varchar(10) as select author_code, name, birthdate from auths where author_code=@author_code 下面執行過程p_auths: p_auths @author_code=A00001 在CREATE PROC語句中,可以為參數賦預設值,該值可以是任何常量。 當用戶不提供參數值時,該值便作為參數值提供給過程。