如何避免PostgreSQL中表的OID列?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何避免PostgreSQL中表的OID列?相关的知识,希望对你有一定的参考价值。

我正在使用PostgreSQL 9.6。我创建了一个包含create query的表。

但是当我在左侧面板中检查pgAdmin时,在表格下我发现了更多六列名为tableid,cmax,xmax,cmin,xmin和ctid。当我搜索这个时,我发现这些是OID列,并不影响其他列上的数据。我必须将数据导入此表。所以在选择表后,从右键单击我获得导入/导出选项。所以,我正在导入.csv文件。但当我试图导入表中的数据时,我得到的错误就像,

ERROR:  column "tableoid" of relation "account" does not exist

请建议我如何从表中删除这些OID列。

答案

您必须缺少名为“tableoid”的csv中存在的某些列。在这种情况下,必须首先创建根据导入文件的TABLE。如果没有先前的表,它将无法工作。这可能有所帮助。

http://www.postgresqltutorial.com/import-csv-file-into-posgresql-table/

以上是关于如何避免PostgreSQL中表的OID列?的主要内容,如果未能解决你的问题,请参考以下文章

PostgreSQL系统列 System Columns

在 PostgreSQL 中,如何根据 C 函数中的类型 Oid 识别类型是复合类型?

PostgreSQL 数据类型介绍(五)OID的理解

PostgreSQL 数据库中表中的空列有多宽? [复制]

持久层框架--hibernate

Redshift ROW_ID 列换行?