熱點推薦:
您现在的位置: 電腦知識網 >> 操作系統 >> Windows系統管理 >> 正文

RETURN

2013-11-11 21:46:09  來源: Windows系統管理 

  RETURN
  從查詢或過程中無條件退出RETURN 即時且完全可在任何時候用於從過程批處理或語句塊中退出不執行位於 RETURN 之後的語句
  
  語法
  RETURN [ integer_expression ]
  
  參數
  integer_expression
  
  是返回的整型值存儲過程可以給調用過程或應用程序返回整型值
  
  返回類型
  可以選擇是否返回 int
  
  
  
  說明 除非特別指明所有系統存儲過程返回 值表示成功返回非零值則表示失敗
  
  
  注釋
  當用於存儲過程時RETURN 不能返回空值如果過程試圖返回空值(例如使用 RETURN @status 且 @status 是 NULL)將生成警告信息並返回
  
  在執行當前過程的批處理或過程內可以在後續 TransactSQL 語句中包含返回狀態值但必須以下列格式輸入
  
  EXECUTE @return_status = procedure_name
  
  
  
  說明 Microsoft® SQL Server&#; 是將空字符串 (NULL) 解釋為單個空格還是真正的空字符串取決於兼容級別設置如果兼容級別小於或等於 SQL Server 就將空字符串解釋為單個空格如果兼容級別等於 則 SQL Server 將空字符串解釋為空字符串有關更多信息請參見 sp_dbcmptlevel
  
  
  示例
  A 從過程返回
  下例顯示如果在執行 findjobs 時沒有給出用戶名作為參數RETURN 則將一條消息發送到用戶的屏幕上然後從過程中退出如果給出用戶名將從適當的系統表中檢索由該用戶在當前數據庫內創建的所有對象名
  
  CREATE PROCEDURE findjobs @nm sysname = NULL
  AS
  IF @nm IS NULL
   BEGIN
   PRINT You must give a username
   RETURN
   END
  ELSE
   BEGIN
   SELECT oname oid ouid
   FROM sysobjects o INNER JOIN mastersyslogins l
   ON ouid = lsid
   WHERE lname = @nm
   END
  
  B 返回狀態代碼
  下例檢查指定作者所在州的 ID如果所在的州是加利福尼亞州 (CA)將返回狀態代碼 否則對於任何其它情況(state 的值是 CA 以外的值或者 au_id 沒有匹配的行)將返回狀態代碼
  
  CREATE PROCEDURE checkstate @param varchar()
  AS
  IF (SELECT state FROM authors WHERE au_id = @param) = CA
   RETURN
  ELSE
   RETURN
  
  下例顯示從 checkstate 執行中返回的狀態第一個顯示的是在加利福尼亞州的作者第二個顯示的是不在加利福尼亞州的作者第三個顯示的是無效的作者必須先聲明 @return_status 局部變量後才能使用它
  
  DECLARE @return_status int
  EXEC @return_status = checkstate
  SELECT Return Status = @return_status
  GO
  
  下面是結果集
  
  Return Status
  
  
  
  再執行一次查詢指定一個不同的作者編號
  
  DECLARE @return_status int
  EXEC @return_status = checkstate
  SELECT Return Status = @return_status
  GO
  
  下面是結果集
  
  Return Status
  
  
  
  再執行一次查詢指定另一個作者編號
  
  DECLARE @return_status int
  EXEC @return_status = checkstate
  SELECT Return Status = @return_status
  GO
  
  下面是結果集
  
  Return Status
  
  

From:http://tw.wingwit.com/Article/os/xtgl/201311/9184.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.