捕捉SQL语句异常
从数据库中查找数据,如果没有查找到数据,会报错。代码如下:
- C# code
//查询语句 public DataSet GetBSF(string BSF) { return data.RunProcReturn("select * from tb_Main where bsf='" + BSF + "'", "tb_Main"); } /// <summary> /// 执行命令文本,并且返回DataSet数据集 /// </summary> /// <param name="procName">命令文本</param> /// <param name="tbName">数据表名称</param> /// <returns>DataSet</returns> public DataSet RunProcReturn(string procName, string tbName) { SqlDataAdapter dap = CreateDataAdaper(procName, null); DataSet ds = new DataSet(); dap.Fill(ds, tbName); this.Close(); //得到执行成功返回值 return ds; }
为了防止出错错误,我准备用捕捉异常的方法。
请问,如果要捕捉异常,应该如何做呢?
[解决办法]
例如SQL语法错误,VS编译是发现不了的,只有执行SQL语句时才会报错。Catch会捕获这些异常并以MessageBox提示给用户。不然有语法错误的话程序就会关闭。
[解决办法]
[解决办法]
对于sql语句的问题,我的做法都是在catch(Exception ex)定一个断点,并监视ex,有异常时就会看到具体是什么问题