需要将varchar转换为numeric并获取datagridview当前单元格值

时间:2012-04-07 19:33:12

标签: c#

我有问题。我的数据库中有'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。

你可以帮助我或其他一些想法吗?

1 个答案:

答案 0 :(得分:1)

您说列ID的类型为varchar。也许尝试以下方法:

DataTable tableData = connStr.query("SELECT * FROM USER WHERE ID='" +
                                    currStr + "'");

换句话说,将参数currStr放在单引号(')之间。