小弟读取数据库中的一段数据 然后实例化DataSet dtSet 用来装载比如数据库中的数据为3956.360352(浮点型)但是我用 string str = dtSet.Tables[0].Rows[0]["latitude"].ToString();却只能得到 3956.36这是为什么呢?请各位帮帮我怎么解决,我才能正确得到3956.360352

解决方案 »

  1.   

    在数据库里 是 3956.360352但是跟踪到 string str = dtSet.Tables[0].Rows[0]["latitude"].ToString(); 
    就是 3956.36 
      

  2.   

    打断点看一下整个DataTable 要是在DataTable里都不对 那就可以试试在SQL里的这个字段加上一个转型 ToChar什么的 再试试 可能是.NET的自动类型转换导致的
      

  3.   


    Dim EmpDs As New DataSet
    OraSqlAdapter = New OracleDataAdapter()
    OraCmd.CommandType = CommandType.Text
    OraCmd.CommandText = sqlcmd
    OraSqlAdapter.SafeMapping.Add("*", GetType(String))
    OraSqlAdapter.SelectCommand = OraCmd
    OraSqlAdapter.Fill(EmpDs)还是不行的话~  试试这样子~
      

  4.   

    OraSqlAdapter.SafeMapping.Add("*", GetType(String))
      

  5.   

    dtSet.Tables[0].Rows[0]["latitude"].ToString("f6"); 
      

  6.   

    查询分析器里执行下用到的sql语句,看看取出的是不是3956.360352,如果不是就转为在sql将该字段转为Char型
      

  7.   

    string str = dtSet.Tables[0].Rows[0]["latitude"].ToString("#########.######");