是否可以在postgresql数据库中插入python元组

时间:2011-03-17 16:47:48

标签: python database postgresql

是否可以在postgresql数据库中插入python元组

4 个答案:

答案 0 :(得分:3)

是的,PostgreSQL支持数组作为列类型。

CREATE TABLE tuples_table (
   tuple_of_strings text[],
   tuple_of_ints    integer[]
);

然后插入就像这样:

INSERT INTO tuples_table VALUES (
('{"a","b","c"}', '{1,2}'), 
('{"e",'f... etc"}', '{3,4,5}')
);

答案 1 :(得分:3)

是的,确实如此。可能最简单的方法是使用例如序列化它。 marshalpicklejson并将其存储在text字段中。

另一种方法是使用Postgres的众多data types例如array type

最后,如果每个元组的元素数量及其类型是固定的,那么您可以创建这么多列并将每个元素映射到表格列。

答案 2 :(得分:1)

我们真的需要更多信息。什么数据里面元组?它只是整数吗?只是字符串?是兆字节的图像吗?

如果您有像(4,6,2,"Hello",7)这样的Python元组,可以将字符串 '(4,6,2,"Hello",7)'插入Postgres数据库,但这可能不是您正在寻找的答案。< / p>

你真的需要弄清楚你真正想要存储的数据,然后才能弄清楚存储它的方式/位置。


编辑:所以简短的回答是“不”,你不能在postgres数据库中存储 任意 Python元组,但可能某种方式可以将内部元组中的任何内容存储起来,并将其存储在有用的地方。

答案 3 :(得分:1)

这个问题没有任何意义。您可以使用SQL插入数据库模型支持的任何内容。如果你需要一个花哨的映射器:看一下像SQLAlchemy这样的ORM。