有没有办法按照activejdbc中数据库中定义的顺序获取表中的列?我试过这个:
User u = new User(); // User extends org.javalite.activejdbc.Model
Map<String, ColumnMetadata> columns = u.getMetaModel().getColumnMetadata();
但是,返回的Map具有按字母顺序排列的列,而不是表中定义的顺序。
如果这很重要的话,我正在使用mysql。
有没有办法按照activejdbc中数据库中定义的顺序获取表中的列?我试过这个:
User u = new User(); // User extends org.javalite.activejdbc.Model
Map<String, ColumnMetadata> columns = u.getMetaModel().getColumnMetadata();
但是,返回的Map具有按字母顺序排列的列,而不是表中定义的顺序。
如果这很重要的话,我正在使用mysql。
1条答案
按热度按时间ppcbkaq51#
它使用标准的jdbc元数据调用,请参见:registry#getcolumns。
但是,这是从jdbc驱动程序返回的,它被添加到
Map
在密码里。如你所知,Map是不以任何方式排序的。不确定为什么需要按数据库中定义的顺序获取列,或者这是否可行。如果您真的想这样做,可以降低到db级别:
这样,你就可以得到司机能提供的任何东西(你的里程数将受到司机实施的限制)