sql 查询表中所有字段的名称


最近工作用到SQL语句查询表中所有字段的名称,网上查询,发现不同数据库的查询方法不同,例如:

SQL server

查询表的所有字段名称:
Select name from syscolumns Where ID=OBJECT_ID('表名')


Sqlite

查询表中所有字段名称;

SELECT name FROM sqlite_master WHERE type=’table’ ORDER BY name;


Oracle
查看所有字段

select column_name from user_tab_columns where table_name='ZW_YINGYEZ'

 

 

考虑到SQL语句的通用性,结合抽象工厂模式,个人结合DataTable、DataSet和基本的SQL语句,设计了一个通用的方法:

List<string> filedList = new List<string>();
DataSet ds = _autoTestSQL.ReadMethod(string.Format("select * from {0} order by [AutoId]", 表名));
DataTable dt = new DataTable();
dt.Clear();
dt = ds.Tables[0];

for (int j = 0; j < dt.Columns.Count; j++)
{
filedList.Add( dt.Columns[j].ColumnName.Trim() );
}

return filedList;//所有表的字段列表

 

这样,就间接的得到所有的字段;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM