如何从MySQL查询返回字段类型?

时间:2011-02-23 16:13:57

标签: mysql fieldtype

简单问题:如何返回MySQL表的字段类型。我知道describeshow column但我只想返回那个参数。 e.g:

SELECT fieldtype(mycol) FROM mytable
# should return INT or integer for example

5 个答案:

答案 0 :(得分:19)

您可以使用

SHOW FIELDS
FROM tableName where Field ='nameOfField'

这将返回

格式的结果
Field   Type    Null    Key     Default     Extra 

答案 1 :(得分:17)

您可以从information_schema数据库中获取此信息:

select data_type 
from information_schema.columns 
where table_schema = 'myschema'
and table_name = 'mytable' 
and column_name = 'mycol'

答案 2 :(得分:5)

我知道我参加派对有点晚了。您可能希望使用COLUMN_TYPE而不是DATA_TYPE。它提供了有关类型的更多信息(例如精度)。

SELECT COLUMN_TYPE
FROM information_schema.COLUMNS
WHERE TABLE_NAME = 'parts'
AND COLUMN_NAME = 'price'

... ...产量

decimal(11,2)

答案 3 :(得分:1)

以下语法也有效,使用describe,在tableName后输入columnName:

describe tbleName columnName;

答案 4 :(得分:0)

ResultSet rs = Sstatement.executeQuery("SELECT * FROM Table Name");

ResultSetMetaData rsMetaData = rs.getMetaData();

int numberOfColumns = rsMetaData.getColumnCount();
System.out.println("resultSet MetaData column Count=" + numberOfColumns);

for (int i = 1; i <= numberOfColumns; i++) {
 System.out.println("column number " + i);

  System.out.println(rsMetaData.getColumnTypeName(i));
}