【问题标题】:How to store 2D array in postgresql using C#?如何使用 C# 在 postgresql 中存储二维数组?
【发布时间】:2016-07-15 16:08:16
【问题描述】:

我想在 postgresql 中保存 2-dim 数组,如下所示:int[,] arr = {{1, 2}, {3, 4}};

我正在使用以下sql statement,它适用于 1-dim 数组,但不适用于 2-dim 数组。

try
{
    string sql1 = "INSERT INTO tbtest(col) VALUES (ARRAY[" + string.Join(", ", arr) + "])";

    dbcmd.CommandText = sql1;
    dbcmd.ExecuteNonQuery();
}
catch (NpgsqlException ex)
{
    if (ex.Data == null)
    {
        throw;
    }
    else
    {

    }
}

我该怎么做?

【问题讨论】:

标签: c# arrays postgresql


【解决方案1】:

试试这个方法

 int[,] arr = { { 1, 2 }, { 3, 4 } };   
 var arrayOutput = JsonConvert.SerializeObject(arr);
 string query = "INSERT INTO tbtest(col) VALUES (ARRAY" + arrayOutput + ")";

输出

插入 tbtest(col) 值(数组[[1,2],[3,4]])

【讨论】:

  • JsonConvert 中的错误是什么?您需要从 Nuget 包中添加 NewtonSoft.Json。
  • 错误:名称JsonConver 不会在当前上下文中退出
  • 你需要添加NewtonSoft.Json Dll。
  • 我没有找到 NewtonSoft.Json Dll Net 4.5。可以发一下链接吗
  • 你可以使用 Nuget 添加这个包
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-20
  • 1970-01-01
  • 1970-01-01
  • 2016-11-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多