如题

解决方案 »

  1.   

    没人帮忙吗?在ado里边这个太容易了。为什么ado.net操作起来这么麻烦?
      

  2.   

    ado里边用arec.fields(i).type就可以了,.net 里边怎么用?
      

  3.   

    你也可以直接用sql语句也可以的呀
      

  4.   

    你可以定义一个dataTable,查询返回就可以了,ref下面的sql 语句
    Select 字段名=a.name, 类型=b.name, 长度=a.length FROM syscolumns a left join systypes b on a.xtype=b.xusertype where a.id=object_id('你的表名')
      

  5.   

    这种语句就算能查到数据类型,但实际用起来,不如老的ado的type灵活。以前是跟着记录集一起回来的,不应该再让我去查数据库。如果是远程查询,速度一定被影响。
    我现在只想知道,ado.net里边应该不会删除了type这个功能,应该是我没找到方法。
      

  6.   

    晕,肯定存在的了!
    你数据取到本地后存在datatable里,什么字段类型,约束都可以通过datatable 来看到的!
    DataTable ldt=XXXXXX....
    ldt.Columns["ID"].ColumnName
    ldt.Columns["ID"].DataType
      

  7.   

    DataColumn.DataType是SqlServer类型映射到.net的类型
      

  8.   

    说是没有错,不过还是有个问题。比如varchar的类型对应着200,int对应着3
    用DataType得到的是string,int32两种。如何能直接得到这个200,3呢?
      

  9.   

    任何程序,包括ADO。NET可以从系统表中获取  所有的表信息, 表结构信息,字段信息。。
      

  10.   

    说是没有错,不过还是有个问题。比如varchar的类型对应着200,int对应着3
    用DataType得到的是string,int32两种。如何能直接得到这个200,3呢?
    DataColumn["XX"].MaxLength  
    DataColumn["XX"].DataType
    DataColumn["XX"].ColumnName
      

  11.   

    可以参考这里的实现,
    http://blog.csdn.net/zhzuo/archive/2004/07/03/33273.aspx
      

  12.   

    string 又有nchr、chr、varchar、nvarchar的分别
      

  13.   

    没来没人想回答了。那样不是说C#是不是就不如VB 灵活呢?
      

  14.   

    VB读出来就可以是数字的,为什么C#的没呢?
      

  15.   

    再顶。我不相信C#这方面不如VB方便,听说csdn只能顶三次。这么久了,也应该有方法了吧