是否可以动态枚举数据库里某个表的列名呢?

解决方案 »

  1.   

    Oracle: select * from sys.col where tname = 'tablename'
    SqlServer:select * from syscolumns where id =(select id from sysobjects where name = 'tablename')
      

  2.   

    参看
    http://community.csdn.net/Expert/topicview.asp?id=1679569
      

  3.   

    ''''Get table's columns from SQL Server
    SELECT a.name col,b.name type,a.length length
    FROM syscolumns a,systypes b,sysobjects c
    WHERE a.xtype=b.xtype
    AND a.id=c.id
    AND b.name NOT LIKE '%sys%'
    AND c.name='TableName'''''Get table's columns from SQL Server
    SELECT column_name col,data_type type,data_length length
    FROM all_tab_columns
    WHERE owner='User'
    AND table_name='TableName'
      

  4.   

    笨办法,执行:select * from table where 0 <> 0,把结果放到DataTable里,然后访问DataTable的Columns就可以了,呵呵。
      

  5.   

    谁说不行无法获取其类型等参数,你看看DataColumn的帮助,类型:DataType属性。
      

  6.   

    可是.NET中的DataType类型和数据库类型并不是一一匹配的阿
      

  7.   

    To:venus0314(雪侯鸟)那就要看楼主的要求了。