我有问题。我的数据库中有'USER'表(ID [varchar]和PK NOT AI,名称[varchar],姓[varchar]) 在我的c#代码中,我有一个datagridview。我显示表'USER'中的所有数据。
例如:
1234 - John - Smith
1347 - Jack - Russel
我需要点击网格单元格后,所选数据必须显示在文本框中。例如,我单击1234单元格,在textBox1中,我将在textBox2 - 'lastname'中显示'name'。它由ID制作。
我的代码是:
connecClass connStr = new connectClass();
DataGridViewRow currentrow = dataGridView1.CurrentRow;
string currStr = currentrow .Cells[0].Value.ToString();
DataTable tableData = connStr.query("SELECT * FROM USER WHERE ID=" +
currentrow);
我收到错误:将类型数据varchar转换为数字时出错 在我尝试了另一种方法后,将.Cells [0]替换为.Cells [“ID”],但是收到错误:找不到列ID。
你可以帮助我或其他一些想法吗?
答案 0 :(得分:1)
您说列ID的类型为varchar
。也许尝试以下方法:
DataTable tableData = connStr.query("SELECT * FROM USER WHERE ID='" +
currStr + "'");
换句话说,将参数currStr
放在单引号(')之间。