sql 查询表中所有字段的名称
2016-09-04 21:03
302 查看
最近工作用到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;//所有表的字段列表
这样,就间接的得到所有的字段;
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;//所有表的字段列表
这样,就间接的得到所有的字段;
相关文章推荐
- ORACLE中查询系统中的所有表和查询某张表中所有字段的名称的SQL写法
- sql查询表中所有字段名称及类型
- oracle如何用sql查询某个表中所有的字段名称(列名)?
- sql查询所有表名和字段名称
- SQL中查询数据表字段名称的查询语句
- sql 查询除某一字段外的所有字段
- sql 查询表的字段名称
- 从数据库中查询所有表及所有字段的SQL语句(转)
- sql语句查询Oracle|sql server|access 数据库里的所有表名,字段名
- sql 获取指定数据表的所有字段名称的字符串
- sql语句查询 sql server access 数据库里的所有表名,字段名
- sql 获取指定数据表的所有字段名称的字符串
- 查询某个字段没有值的所有记录的SQL语句怎么写?
- sql 查询所有数据库、表名、表字段总结
- 有一个数据表,但是我只知道一个字段的名称。现在我想查询数据库里面的除去这个字段的所有数据!
- sql 获取指定数据表的所有字段名称的字符串
- SQL中查询数据表字段名称的查询语句[转]
- 从数据库中查询所有表及所有字段的SQL语句
- 查询数据库中所有表及所有字段的SQL语句
- SQL查询所有数据库名称,表大小.