我在我的项目中使用libpqxx。该项目是特定的,因为我不知道将执行哪些SQL语句。让我们假设用户输入语句:
SELECT * FROM table1
执行该语句,我将得到结果记录,并可以遍历它。
for( auto row = myresult.begin(); row != myresult.end(); ++row)
{
//Here I can access row elements.
}如果我知道type在row中的第一个元素是什么,让我们说它是int,我可以得到如下值:
int firstElement = row[0].as<int>();但我不知道。有一个方法type() (我可以在row元素上调用它),它是return的类型oid (它是某种列标识符)--它是数值,但我不知道如何使用该值来获得行元素的类型。我的问题是:
是否有一些枚举或其他方法使用此oid获取行元素type
发布于 2015-08-30 21:28:41
Oid是postgres内部的。不是libpqxx只是打字
select typname, oid from pg_type;在psql.This中,列出所有可删除的类型。
如果要使用源文件中的类型,请获取postgres源。source.html
只要在go中查看这个配置,就可以一目了然。忽略类型名称中的T_(一个下划线)。
https://stackoverflow.com/questions/32135752
复制相似问题