John Smith
John Smith

Reputation: 47

How can I change a "True" in a DataGridView to Yes?

Basically it says it all in my question. I don't know how to that. I've tried this (replace true/false in datagridview columns) but it doesn't work for me. My SQL code is:

create table ejemploc
(
id int not null,
nombre varchar(35),
opcion1 varchar(5),
opcion2 varchar(5),
opcion3 varchar(5),
constraint pkid primary key (id)
)engine=innodb;

and my code to populate my DataGridView is:

private void CargaDataGridView()
        {
            conexion.Open();
            dataGridView1.Rows.Clear();
            try
            {
                cmd.CommandText = "select * from ejemploc";
                rd = cmd.ExecuteReader();

                while (rd.Read())
                {
                    this.dataGridView1.Rows.Add(rd.GetValue(0), rd.GetValue(1), rd.GetValue(2), rd.GetValue(3), rd.GetValue(4));
                }
                conexion.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

I'll appreciate any help. Thanks!

EDIT:

I got the answer, thanks to https://stackoverflow.com/users/491243/jw and https://stackoverflow.com/users/1711633/vond-ritz

change "cmd.CommandText = "select * from ejemploc";" to

cmd.CommandText = "SELECT  id,nombre, CASE WHEN opcion1 = 'True' THEN 'Sí' ELSE 'No' END opcion1, CASE WHEN opcion2 = 'True' THEN 'Sí' ELSE 'No' END opcion2, CASE WHEN opcion3 = 'True' THEN 'Sí' ELSE 'No' END opcion3 FROM ejemploc";

Upvotes: 2

Views: 241

Answers (1)

John Woo
John Woo

Reputation: 263733

SELECT  id,
        nombre,
        CASE WHEN opcion1 = 'True' THEN 'Yes' ELSE 'No' END opcion1,
        CASE WHEN opcion2 = 'True' THEN 'Yes' ELSE 'No' END opcion2,
        CASE WHEN opcion3 = 'True' THEN 'Yes' ELSE 'No' END opcion3
FROM    ejemploc

or if true = 1 then,

SELECT  id,
        nombre,
        CASE WHEN opcion1 = 1 THEN 'Yes' ELSE 'No' END opcion1,
        CASE WHEN opcion2 = 1 THEN 'Yes' ELSE 'No' END opcion2,
        CASE WHEN opcion3 = 1 THEN 'Yes' ELSE 'No' END opcion3
FROM    ejemploc

Upvotes: 3

Related Questions