gpt4 book ai didi

c# - 每次获取C# Mysql后用逗号获取Mysql数据

转载 作者:行者123 更新时间:2023-11-29 02:19:46 25 4
gpt4 key购买 nike

我正在尝试从 mysql 数据库 Column 中获取数据,其中假设我有特定列的多行数据,并且我需要在每行获取后包含昏迷。

在我尝试添加昏迷时提供数据之前

添加代码后的当前输出 Response.Write(name.Split(','));

System.String[]System.String[]System.String[]System.String[]System.String[]System.String[]System.String[]System.String[]System.String[]System.String[]System.String[]

我的数据库

Phone_Number              School_id

1 SC1
2 SC1
3 SC1
4 SC1

预期输出

1,2,3,4

我的获取查询

  string constr = ConfigurationManager.ConnectionStrings["Logging"].ConnectionString;


using (MySqlConnection con = new MySqlConnection(constr))
{

using (MySqlCommand MySqlCommand = new MySqlCommand("SELECT Phone_Number FROM Login where SchoolId='" + SessionManager.SchoolId + "'", con))
{
MySqlCommand.CommandType = CommandType.Text;
con.Open();
MySqlDataReader MySqlDataReader = MySqlCommand.ExecuteReader();
while (MySqlDataReader.Read())
{

string name = MySqlDataReader["FatherFullName"].ToString();

Response.Write(name.Split(','));


}
con.Close();
}
}

最佳答案

String.Split方法用特殊字符或字符串拆分字符串。这不是你想要的。

您可以添加您的 Phone_Number List<string> 的值你可以使用 string.Join(string, IEnumerable<String>) method生成逗号分隔值。

var list = new List<string>();
while(MySqlDataReader.Read())
{
string name = MySqlDataReader["FatherFullName"].ToString();
if(!string.IsNullOrEmpty(name))
{
list.Add(name);
}
}
Response.Write(string.Join(",", list)); // 1,2,3,4

您应该始终使用 parameterized queries顺便一提。这种字符串连接对于 SQL Injection 是开放的攻击。

还有两件事;

  • 默认值 CommandTypeText .您不需要显式分配它。
  • 您不需要关闭与 con.Close() 的连接.由于您使用了 using声明,它会自动执行此操作。

关于c# - 每次获取C# Mysql后用逗号获取Mysql数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33781938/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com