Member 12938297 Ответов: 1

Как заполнить текстовое поле из базы данных, имеющее один столбец с несколькими значениями?


Привет...
я создал одну базу данных в mysql, где один coloumn имеет несколько значений...
например ... колумн, имеющий имя "ход", имеет список ходов из разных отделов...
все это значение должно быть заполнено в одном текстовом поле.

Кто-нибудь знает, как это сделать без использования javascript?

Что я уже пробовал:

string sql = "select HOD,IS_HOD_APPROVED from ch_hod where REQ_RECORD_ID= '" + vals + "'";
command.CommandText = sql;
OracleDataReader reader = command.ExecuteReader();
reader.FetchSize = reader.RowSize * 1000;
while (reader.Read())
{

    Session["Emp_hd"] = reader["HOD"].ToString();
}
lbl_name.Text = Session["Emp_hd"].ToString();


я использовал приведенный выше код в c#...
но это принесет только последнее значение....

[no name]

"принесет только последнее значение", ГМ, нет, это не так. Он извлекает все значения, но единственное, что вы видите, - это последнее в списке, потому что вы просто перезаписываете значения снова и снова. Если вам действительно нужно сделать это опрометчивое заполнение нескольких значений в текстовое поле, вам нужно += значения.

1 Ответов

Рейтинг:
10

CHill60

Как уже указывал @NotPoliticallyCorrect, все, что вы делаете, - это постоянно перезаписываете Предыдущее значение.
Если вам нужен список значений, рассмотрите возможность использования соответствующего элемента управления, отличного от текстового поля, например ListBox или DataGrid. Здесь я предположил, что у вас есть многострочное текстовое поле под названием lbl_name однако и снизили риск SQL-инъекции с помощью параметризованного запроса. (обратите внимание, что это непроверено)

string sql = "select HOD,IS_HOD_APPROVED from ch_hod where REQ_RECORD_ID= @vals";
command.CommandText = sql;
command.Parameters.AddWithValue("@vals",vals);
OracleDataReader reader = command.ExecuteReader();
reader.FetchSize = reader.RowSize * 1000;
StringBuilder sb = new StringBuilder("");
while (reader.Read())
{
    sb.Append(reader["HOD"].ToString());
    sb.Append(Environment.NewLine);

}
Session["Emp_hd"] = sb.ToString();
lbl_name.Text = sb.ToString();


Member 12938297

Спасибо......