我创建了一个包含2列的数据库表,其中一列存储了PlainText
,另一列存储了Md5Hash
的{{1}}。
我正在尝试在给定PlainText
的情况下从C#搜索我的数据库以获取所需的PlainText
。
我试过了:
MDF5Hash
给出正确的com.CommandText = "Select PlainText from dbo.CryptTable where Md5Hash='" + textBox1.Text + "'";
try
{
com.Connection = con;
con.Open();
MessageBox.Show(com.ExecuteNonQuery().ToString());
con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
我收到MdFHash
。
答案 0 :(得分:3)
使用ExecuteScalar()
代替ExecuteNonQuery()
。它将从第一行结果中返回第一个单元格,这正是您所需要的。
执行查询,并返回查询返回的结果集中第一行的第一列。其他列或行将被忽略。
对连接执行Transact-SQL语句并返回受影响的行数。