Bootstrap

gorm 获取MYSQL 某个表的列名 列属性

最近在用golang 操作一个数据库, 准备读取数据库中某个表( 例如pricerecord表)的表结构,然后放在内存的哈希表中。摸索了一下如何用gorm查询一个表的列名和列属性:

mysql 里可以用  “desc tablename” 来获取表的信息,这里返回值是:

{ Field,Type,Null,Key,Default,Extra}, 返回项均是string类型!

因此定义

type tabel_infor struct{
   Field string 
   Type  string
   Null  string
   Key   string
   Default string
   Extra string
}

然后用gorm 的原生查询

 var Pricerecord []tabel_infor					 
	 dbin.Raw("desc pricerecord").Scan(&Pricerecord)	
	 for _,v:=range(Pricerecord){
		fmt.Println(v)		
	 }

输出结果是:

{number int YES   }
{name varchar(255) YES   }
{price float YES   }
{discription varchar(255) YES   }

下一步生成哈希表(待补充)

;