最近工做用到SQL语句查询表中全部字段的名称,网上查询,发现不一样数据库的查询方法不一样,例如:sql
SQL server
查询表的全部字段名称:
Select name from syscolumns Where ID=OBJECT_ID('表名')数据库
Sqlitespa
查询表中全部字段名称;设计
SELECT name FROM sqlite_master WHERE type=’table’ ORDER BY name;orm
Oracle
查看全部字段server
select column_name from user_tab_columns where table_name='ZW_YINGYEZ'sqlite
考虑到SQL语句的通用性,结合抽象工厂模式,我的结合DataTable、DataSet和基本的SQL语句,设计了一个通用的方法:string
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];it
for (int j = 0; j < dt.Columns.Count; j++)
{
filedList.Add( dt.Columns[j].ColumnName.Trim() );
}table
return filedList;//全部表的字段列表
这样,就间接的获得全部的字段;