查询数据表属性名
程序员文章站
2022-05-31 16:14:26
...
- 方式一(推荐):
DESC table_name;
//使用效果和它类似
show columns from table_name;
结果:
其中field列显示的表中的列名,按照表中列的顺序从上到下出现。
- 方式二:
SHOW CREATE TABLE table_name;
结果为:
table是表名,Create Table显示的是创建表的SQL语句(其中有属性名,需要自己去处理字符串截取)。
- 方式三:
SELECT * FROM `information_schema`.`columns`
WHERE `table_schema` = 'database_name'
AND `table_name` = 'table_name'
这个显示的信息最多,图截不下。
方式四
如果使用mybatis,的话比较方便
Mapper:
import java.util.Map;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@Select("select * from ${tablename} ")
Map<String ,Object> selectOne( @Param("tablename") String tablename);
局限性:
- 表中必须有值,没有值什么也查不出来。
- 列也必须有值,空的列也查不出属性名。
方式五(和方案3相似):
SELECT COLUMN_NAME 列名, DATA_TYPE 字段类型, COLUMN_COMMENT 字段注释
FROM information_schema.COLUMNS
WHERE table_name = '表名' AND table_schema = '数据库';