VB 调用SQL2000 存储过程异常捕获VB codePrivate Sub Command1_Click()Dim cmd As New ADODB.CommandDim s
VB 调用SQL2000 存储过程异常捕获
VB code
Private Sub Command1_Click() Dim cmd As New ADODB.Command Dim sql As String sql = "SP_INSERT" cmd.ActiveConnection = g_conn cmd.CommandType = adCmdStoredProc cmd.CommandText = sql cmd.Execute Set cmd = NothingEnd Sub
SQL code
CREATE PROCEDURE SP_INSERT ASINSERT INTO t_A SELECT 'a' --t_A正常可以插入INSERT INTO t_B SELECT 'a' --t_B不存在 应该报错的
执行结果VB没有报错,有什么办法抛出异常
[解决办法] 应该在存储过程中处理错误,VB中取返回值.... [解决办法] 给你个例子 CREATE OR REPLACE PROCEDURE "ZZ_TMP" (SMsg in string) as ERROR_MSG VARCHAR2(200);
BEGIN --添加业务代码 ...... COMMIT; -- 出错处理 EXCEPTION WHEN OTHERS THEN ROLLBACK; ERROR_MSG := SUBSTR(SQLERRM,1,150); SMsg := SUBSTR(SQLERRM,1,150); INSERT INTO TM_ERROR_INFO VALUES('ZZ_TMP',SYSDATE,ERROR_MSG); END;