SQL查询字段名

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL查询字段名相关的知识,希望对你有一定的参考价值。

主要是查询某个表中的字段名称
SQL数据库或ACCESS数据库,(好像都是一样的)
如:表1 分别字段为 A B C
在不知道字段的情况下得到字段名
或者VB中的ADODC也行 我没有找到ADODC的参数

参考技术A 获取数据库表的字段清单 [这里是查看 test_table 表的字段]
SELECT
a.column_id AS No,
a.name AS 列名,
isnull(g.[value],'-') AS 说明
FROM
sys.columns a left join sys.extended_properties g
on (a.object_id = g.major_id AND g.minor_id = a.column_id)
WHERE
object_id =
(SELECT object_id FROM sys.tables WHERE name = 'test_table')

No 列名 说明
1 Test_ID 主键(自增长)
2 Test_Key 种类
3 Test_Value 数值
4 Test_Type 内部类型
5 Test_BelongTo 从属关系
6 Test_Grade 等级
7 Test_Remark 备注
8 Test_Visible 是否可见

参考资料:http://hi.baidu.com/wangzhiqing999/blog/item/e8296bf6d1e35300b17ec511.html

参考技术B phpmysql_query("show table_name",$con);

table_name是表名,$con是数据库链接对象。
参考技术C select d.name as table_name, a.name as column_name from syscolumns a inner join sysobjects d on a.id = d.id and d.xtype = 'U'
where a.name = '表名'本回答被提问者采纳
参考技术D desc 表名

hibernate sql 语句 查询所有 字段名

/*Statement statement = null;
Connection disconnect = null;
ResultSet resultSet = null;
try
disconnect = getSession().disconnect();
statement = disconnect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
resultSet = statement.executeQuery(sql);
ResultSetMetaData metaData = resultSet.getMetaData();
for (int i = 0; i < metaData.getColumnCount(); i++)
System.out.println("获取到的数据ziduan字段名:" + metaData.getColumnName(i));

catch (SQLException e)
e.printStackTrace();
finally
if (statement != null)
try
if (resultSet != null)
resultSet.close();

statement.close();
disconnect.close();
catch (SQLException e)
e.printStackTrace();


*/
// String[] namedParameters = getSession().createSQLQuery(sql).getNamedParameters();
// System.out.println("namedParameters = " + Arrays.toString(namedParameters));

以上代码应该可行,但是我用的时候包异常,好像是连接的问题,有知道原因的大神请指点一下.

 

String sql = "SELECT * FROM " + tableName;/* + " WHERE Recid=" + queryParameters*/
List<Map<String, Object>> list = getSession().createSQLQuery(sql).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
System.out.println("获取到的数据list:" +list);

这三行代码可以输出list集合,key是字段名称,value是值   <正好是我想要的>

/*String sql = "SELECT * FROM " + tableName;
List list = getSession().createSQLQuery(sql).list();
for (int i = 0; i < list.size(); i++)
//这里要用Object[]接收查出来的list中每一条数据
Object[] obj = (Object[]) list.get(i);
System.out.println("获取到的数据:13" + Arrays.toString(obj));
*/

如果只是查询数据的话,以上几行代码即可.


以上是关于SQL查询字段名的主要内容,如果未能解决你的问题,请参考以下文章

常用的SQL语句

数据库的表名字段名大小写问题

获取所有数据库名表名字段名

select数据查询

第四章select数据查询

PostgreSQL中表名字段名大小写问题