SQL老报错,我要把系统的信息变成我的提示信息

解决方案 »

  1.   

    try
    {数据库操作}
    except
      showmessage('我的提示信息')
    end;
      

  2.   

    程序写对了sql就不会报错了,你不能屏蔽所有的错误吧,那就发现不了程序的问题了
      

  3.   

    可以抛出个异常
     raise Excetion.create("提示信息");
      

  4.   

    Query1.SQL.SaveToFile('d:/123.txt');//看看有什么问题
      Query1.Open;
    把123.txt打看看,看有什么问题
      

  5.   

    try
      statements.....
    except
      on E: Exception do Application.MessageBox(E.Message);   
    end;
      

  6.   

    try
      statements.....
    except
      on E: EOleException do ///////////??????????????
     
      SHowmessage('   ')
    end;
      

  7.   

    可以在存储过程中使用 
    if @@Error<>0
    begin
    select @lcmessage='我的信息'
    return
    end
      

  8.   

    try
      数据库执行
    except
      application.massage('数据库连接失败','提示',mb_ok+mb_iconerror)
    end;
      

  9.   

    要真的变成自己的信息,您最好使用@@Error,根据@@Error的值,返回给用户对应的错误信息,比如 if @@Error=2 then
      message('您没有权限访问‘,’系统提示‘,mb_ok+mb_iconerror);
    if @@Error=3 then
      message('您没有select权限‘,’系统提示‘,mb_ok+mb_iconerror);
    if @@Error=4 then
      message('您没有update权限‘,’系统提示‘,mb_ok+mb_iconerror);
      

  10.   

    if not exists(select top 1 * from cw_cpjxc_ls  where t1=@t1 and @t2=@t2)
      begin
        ........
      end
    else
      begin
        RAISERROR('该时间段成品已被结存,请查看历史结存中数据!',16,1)
      end