大家好下面是我读取数据库时的代码。当我的身份证号最后一位为X时,在adapter.Fill(dataset);处会提示X附近有语法错误,请问这个问题怎么解决,谢谢
        public DataSet GetDataSet(String SqlString)
        {
            OpenDataBase();
            SqlDataAdapter adapter = new SqlDataAdapter(SqlString, Connection);
            DataSet dataset = new DataSet();
            adapter.Fill(dataset);
            CloseDataBase();
            return dataset;
        }

解决方案 »

  1.   

    是不是定义了dataset的数据类型?
      

  2.   

    SqlString语句,在查询分析执行
      

  3.   

    这和你定义的数据类型有关,,应该是string类型吧,
    再用正则表达式
      

  4.   

    SqlString 也就是你的Select语句吧。我想,你可以把select语句放入到查询分析器中进行查询一下。
      

  5.   

    Select StudentInfo.LsSubmit From [StudentInfo] where StudentInfo.idencardID = 41302819821011001X其中idencardID 的属性是varchar类型,是不是类型错了?该用什么类型?
      

  6.   

    Select StudentInfo.LsSubmit From [StudentInfo] where StudentInfo.idencardID = '41302819821011001X'
    varchar查询要加引号
      

  7.   

    哦 
    的确是这样的,之前写sql语句的时候没遇见后面带X的就没有事,但是换成带X的就发现问题了
    谢谢大家