我正在使用jdbc来执行查询语句(在jruby中)
# made-up example
sql = "select " +
"c.type as cartype, " +
"o.id as ownerid, " +
"o.type as ownertype " +
"from cars c " +
"inner join owners o " +
"on c.vin = o.vin"
# 'stmt' gotten with jdbc-connection.create_statement()
result_set = stmt.execute_query(sql)
meta_data = result_set.get_meta_data()
col_count = result_set.get_column_count()
我可以通过列索引查询每列的各个列别名(get_column_name
)和表(get_table_name
),但我还需要列的实际/物理名称,无锯齿。
如何获取列的物理/实际名称,因为它在架构中定义(例如,“ownerid”列别名是列“id”)?
答案 0 :(得分:1)
从其他数据库类型的测试中,它看起来好像是数据库+驱动程序特定的。使用mysql get_column_name
返回实际/物理列名称,而get_column_label
返回别名。顺便说一句,两种数据库类型(mysql和sqlite)都通过get_table_name
返回物理表名。