C# 从数据库中读取行,并将行值分配给Postgresql和C中的字符串变量
我的数据库中有一个表,由一列NewLanguagevarchar组成。我向表中插入了新语言,我想选择表中的行,并将它们分配给一个由“,”分割的字符串变量。 我尝试选择代码中的语言C# 从数据库中读取行,并将行值分配给Postgresql和C中的字符串变量,c#,postgresql,C#,Postgresql,我的数据库中有一个表,由一列NewLanguagevarchar组成。我向表中插入了新语言,我想选择表中的行,并将它们分配给一个由“,”分割的字符串变量。 我尝试选择代码中的语言 public string SelectLanguagesFromDatabase() { NpgsqlCommand COM = new NpgsqlCommand(null,dbConnection); COM.CommandText = "select * from \
public string SelectLanguagesFromDatabase()
{
NpgsqlCommand COM = new NpgsqlCommand(null,dbConnection);
COM.CommandText = "select * from \"Languages\"";
}
如何从数据库中选择ROE并将其分配给字符串变量
In an example
如果语言列为
NewLanguage
C
c++
java
我想有一个字符串,如C、C++、java。
我该怎么做?
谢谢。您可以使用string\u agg以逗号分隔的文本连接特定列中的所有值,如下所示:
SELECT string_agg (NewLanguage,',') FROM "Languages"
改编自并使用查询:
@Ilesh Patel我更新了我的方法,然后我有另一个问题,那就是这个方法的返回值必须是什么?如果将结果存储到变量名中,比如存储到var中,那么它应该是文本
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();
}
}
}