在Postgresql和c#中,从数据库中读取行并将行值赋给字符串变量
本文关键字:变量 字符串 读取 Postgresql 数据库 | 更新日期: 2023-09-27 18:14:23
我有一个表在我的数据库由一列这是NewLanguage(varchar)。我插入新的语言表,我想选择表的行,并将它们分配给一个字符串变量分割','。我尽量选择代码中的语言。
public string SelectLanguagesFromDatabase()
{
NpgsqlCommand COM = new NpgsqlCommand(null,dbConnection);
COM.CommandText = "select * from '"Languages'"";
}
我如何从数据库中选择罗伊并将它们分配给字符串变量?
In an example
如果Languages Column是
NewLanguage
C
c++
java
我想有一个字符串作为"C,c++,java"。我该怎么做呢?谢谢。
您可以使用string_agg将特定列中的所有值连接在逗号分隔的文本中,如下所示:
SELECT string_agg (NewLanguage,',') FROM "Languages"
改编自用户手册,使用Ilesh Patel的查询:
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();
}
}
}