它不受支持?尝试使用命令参数设置为:
插入数据时出现异常var parameter = ((IDbDataParameter)cmd.Parameters[index]);
var list = (string[][])value;
parameter.Value = list;
留言
System.NotSupportedException:Npgsql或PostgreSQL不支持此.NET类型:System.String [] []
我正在使用PostgreSQL 9.4并创建了一个类型为text[][]
的列。由于text[]
映射到string[]
没有任何问题,我无法看到二维数组无效的原因。
答案 0 :(得分:2)
Postgres中没有数据类型 。文档中容许指示多个数组维度的语法变体,但在内部所有这些变量都映射到适用于任意维度的相同(且唯一)数组类型:text[][]
text[]
。在.net声明中尝试string[]
。
你不必接受我的话,自己测试一下:
SELECT pg_typeof(NULL::text[][]) AS type1
, pg_typeof('{a,b}'::text[][]) AS type2
, pg_typeof('{{{a,b},{c,d}}, {{a,b},{c,d}}}'::text[][][][][]) AS type3;
type1 | type2 | type3
--------+--------+--------
text[] | text[] | text[]
相关: