我正在使用 MySqlDataAdapter 像这样用我的数据库中的数据填充 dataGridView 小部件
using (var connection = new MySqlConnection(ConnectionString))
{
var adapter = new MySqlDataAdapter("SELECT username AS `Opened By`, assignee_id AS `Assigned To`, ticket_category AS `Category`, ticket_summary AS `Summary`, ticket_description AS `Description`, ticket_status AS `Status` FROM tickets INNER JOIN users ON tickets.user_id = users.user_id;", connection);
var dataset = new DataSet();
adapter.Fill(dataset);
ticketDataGrid.DataSource = dataset.Tables[0];
}
ticket_status 是一个 tinyint( bool 值),用于确定工单是打开还是关闭。如果值为 1,则工单打开,如果值为 0,则工单关闭。
当我用从数据库中引入的数据集填充此 dataGridView 时,Status 列(来自 ticket_status 列的数据)仅包含 1 或 0(因为这是它们存储在数据库中的内容)
我想在将数据集分配为 dataGridView 的数据源之前仅处理此列,这样如果 ticket_status 的值为 1,则字符串“Open”将添加到该列而不是 1,如果 ticket_status 的值为 0,则将字符串“Closed”添加到列而不是 0。
我怎样才能做到这一点?
最佳答案
只是替换
ticket_status AS `Status`
与
IF(ticket_status=1,'Open','Closed') AS `Status`
在你的选择语句中
关于c# - 如何处理 MySqlDataAdapter 引入的数据集中单个列的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51588419/