0

我有个问题。我的数据库中有表'USER'(ID[varchar] and PK NOT AI, name[varchar], surname[varchar])在我的c#代码中我有一个datagridview。我显示我的表“用户”中的所有数据。

例如:

1234 - John - Smith
1347 - Jack - Russel

在我需要单击网格单元格后,所选数据必须显示在文本框中。例如,我单击 1234 单元格,然后在 textBox1 中显示“姓名”,在 textBox2 -“姓氏”中。它通过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。

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

4

1 回答 1

1

你说列 ID 是 type varchar。也许尝试以下方法:

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

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

于 2012-04-08T12:17:08.947 回答