PB中呼叫儲存過程

happymagic發表於2015-04-23
PB中呼叫儲存過程完整程式設計
String   ls_Proc
Long   ll_Count,ll_flag
String   ls_Id
String   ls_return
ls_Proc = 'USP_PROC'

//系統表sysobjects 中是否存在儲存過程 USP_PROC
SELECT Count(*) INTO :ll_count from sysobjects where name = :ls_Proc and xtype = 'P';
If ll_Count <= 0 Then
   messagebox("錯誤",'錯誤資訊:儲存過程' + ls_Proc + '不存在!')
   Return -1
End If


/*@Shop_ID ,@return_id 為資料庫儲存過程引數名,ls_Id,ls_return 為PB中的變數USP_PROC為資料庫中的儲存過程名,Emp_proc1 為為PB中的變數*/

DECLARE Emp_proc1 procedure for USP_PROC
@Shop_ID = :ls_Id,@return_id = :ls_return OUTPUT;
EXECUTE Emp_proc1;
   
If Sqlca.Sqlcode < 0 Then
   messagebox("錯誤","錯誤資訊:" + Sqlca.SqlErrText)
   Close Emp_proc1 ;
   return -1
else
   fetch Emp_proc into :ls_return;
   if ll_flag <> 0 then
    //messagebox("提示資訊",ls_return)
    close Emp_proc ;
    return -1
   End if
End If
close Emp_proc1 ;

相關文章