首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从数据库中读取行,并将行值分配给Postgresql和C#中的字符串变量。

问从数据库中读取行,并将行值分配给Postgresql和C#中的字符串变量。
EN

Stack Overflow用户
提问于 2014-07-23 15:44:25
回答 2查看 141关注 0票数 0

我的数据库中有一个表,其中包含一列NewLanguage(varchar).I将新语言插入到表中,我希望选择表中的行并将它们分配给由',‘拆分的字符串变量。我尝试选择代码中的语言。

代码语言:javascript
复制
public string  SelectLanguagesFromDatabase()
    {

        NpgsqlCommand COM = new NpgsqlCommand(null,dbConnection);
        COM.CommandText = "select * from \"Languages\"";


    }

如何从数据库中选择roes,并将其赋值给string变量?

代码语言:javascript
复制
In an example

如果Languages列是

代码语言:javascript
复制
  NewLanguage

 C
 c++
 java

我想有一个字符串作为"C,c++,java“。我该怎么做呢?谢谢。

EN

回答 2

Stack Overflow用户

发布于 2014-07-23 15:46:34

您可以使用string_agg将特定列中的所有值连接到逗号分隔的文本中,如下所示:

代码语言:javascript
复制
SELECT string_agg (NewLanguage,',') FROM "Languages"
票数 2
EN

Stack Overflow用户

发布于 2014-07-23 16:09:00

改编自user manual并使用Ilesh Patel's查询:

代码语言:javascript
复制
using System;
using System.Data;
using Npgsql;

public static class NpgsqlUserManual
{
  public static void Main(String[] args)
  {
    NpgsqlConnection conn = new NpgsqlConnection("Server=127.0.0.1;Port=5432;User Id=joe;Password=secret;Database=joedata;");
    conn.Open();

    NpgsqlCommand command = new NpgsqlCommand("SELECT string_agg(NewLanguage,',') FROM Languages", conn);
    String results;

    try
    {
      results = (String)command.ExecuteScalar();
      Console.WriteLine("{0}", results);
    }


    finally
    {
      conn.Close();
    }
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24904594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档