我必须从数据库中获取数据并在表单中输入文本框。我的表单具有文本框和gridview(仅适用于某些文本框)。我必须根据选定的网格视图cell = PROJECTNAME从数据库中获取数据并输入与之匹配的其他文本框标准。
我已经完成了单个文本框的编码部分,并且显示了“ {“ ORA-00904:\” PRIME \“:无效标识符”}“

请帮助我以下

OracleConnection con = new OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["TEST"].ToString());
con.Open();
OracleCommand cmd = con.CreateCommand();
string prime = gdDisplay.SelectedRow.Cells[1].Text;

cmd.CommandText = "Select DESCRIPTION FROM CMPPOJECT WHERE PROJECTNAME = prime";
string str= cmd.ExecuteScalar().ToString();
txtDescription.Text = str;

最佳答案

你可以做这样的事情

无需继续调用.ToString(),因为getValue已经是字符串。并且还需要注意,字符串值必须用''单引号引起来。

cmd.CommandText = "Select DESCRIPTION FROM CMPPOJECT WHERE PROJECTNAME = 'prime'";
var str= cmd.ExecuteScalar();


我们可以检查一下值是否为空

if (str!= null) {
    txtDescription.Text = str.ToString();
}


除此之外,您也可以使用它

cmd.CommandText = "Select DESCRIPTION FROM CMPPOJECT WHERE PROJECTNAME = 'prime'";
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
    txtDescription.Text = reader["DESCRIPTION"].ToString().Trim();
}

10-08 04:57