生成了 sql语句怎样去分析它 语法是否正确呢?

解决方案 »

  1.   

    恐怕只有执行一次Sql看有没有异常了:
    public bool ExecSql(string strSql)
    {
    SqlConnection mCn
    =new SqlConnection("...");
    SqlTransaction mTr
    =mCn.BeginTransaction(); 
    SqlCommand mCmd
    =new SqlCommand(strSql,mCn);
    mCmd.Transaction=mTr;
    try
    {
    mCmd.ExecuteNonQuery();
          mTr.Rollback(); 
    return true;
    }
    catch
    {
    return false;
    }
    }
      

  2.   

    你想做一个Sql的词法分析器吗?厉害
      

  3.   

    1.根据SQL标准(如sql 1992 ANSI)自己写parser
    2.用别人写好的. -__-
      

  4.   

    赞同: CMIC(大象) ( ) 
    恐怕只有执行一次Sql看有没有异常了:
      

  5.   

    同意大象,加两句
    catch
    {
       return false;
    }
    =======================>catch (Exception ex)
    {
       label_err=ex.ToString();//建立一个label控件返回出错原因
       return false;
    }
      

  6.   

    try
    {}
    catch(SqlException e)
    {}
    finally
    {}