musiw Ответов: 2

как отобразить данные из базы данных в текстовое поле


всем привет,

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

p/s: данные начинаются с 4-го столбца базы данных

manognya kota

Привет,

не могли бы вы сообщить нам, какие источники вы пробовали?

2 Ответов

Рейтинг:
17

Tejas Vaishnav

Прежде всего, пожалуйста, проясните свой вопрос, вам нужно еще немного уточнить или улучшить то, что вы хотите и что вы уже пытаетесь..

в соответствии с моим пониманием вашего вопроса я ответил на него...

1) Прежде всего разработайте свой asp.net страница с количеством текстовых полей вам нужно показать данные, например, если вам нужно показать данные 1 столбца, то создайте или спроектируйте 1 текстовое поле с соответствующим идентификатором или именем...

2) на странице code behinde вам нужно написать код для подключения к базе данных и получения данных из этой базы данных...

3) после получения данных из базы данных вам нужно связать эти данные с вашим текстовым полем..

4) Как вы упомянули, что вам нужно обновить данные, поэтому вам нужно поставить одну кнопку для ручного обновления данных базы данных...


я думаю, что вы можете выполнить 1-й шаг своим собственным способом.. и я здесь даю пример привязки данных 1 столбца с моим собственным идентификатором текстового поля, что вам нужно, так это изменить мой простой код по-своему и внести соответствующие изменения для вашего решения...

для работы с базой данных вы можете использовать такой код..

protected void CreateConnection()
{
    try
    {
        if (SqlCon == null)
        {
            string ConnectionString = "YOUR CONNECTION STRING";
            SqlCon = new SqlConnection(ConnectionString);
        }
        if (Da == null)
        {
            Da = new SqlDataAdapter();
        }
    }
    catch (Exception exe)
    {
        throw exe;
    }
}

protected void OpenConnection()
{
    if (SqlCon != null && SqlCon.State != ConnectionState.Open)
    {
        SqlCon.Open();
    }
}
protected void CloseConnection()
{
    if (SqlCon.State != ConnectionState.Closed)
        SqlCon.Close();
}


для получения результирующих данных вы можете использовать вот так..
CreateConnection();
DataTable resultTable = new DataTable("YOURRESULTEDDATATABLENAME");
OpenConnection();
Da.SelectCommand = new SqlCommand();
Da.SelectCommand.Connection = SqlCon;
Da.SelectCommand.CommandType = CommandType.Text;
Da.SelectCommand.CommandText = "YOUR SELECT QUERY THAT WILL RETURN YOUR COLUMNS DATA";
Da.Fill(resultTable);

if (resultTable.Rows.Count > 0)
{
 // here i use only one record to disply so i give row number static that is 0 
    TextBox1.Text = resultTable.Rows[0]["YOUR COLUMN NAME"].ToString();
}
CloseConnection();


Для запроса кнопки обновления вам нужно использовать что-то вроде этого...
CreateConnection();
OpenConnection();
Da.UpdateCommand = new SqlCommand();
Da.UpdateCommand.Connection = SqlCon;
Da.UpdateCommand.CommandText = "YOUR UPDATE QUERY QUERY";
Da.UpdateCommand.ExecuteNonQuery();
CloseConnection();


я надеюсь, что это поможет вам или более подробно вы можете ознакомиться по этой ссылке..

Привязка данных[^]


musiw

привет,

извините, что спрашиваю снова.. как это сделать, если я хочу отобразить в нескольких текстовых полях..?
он появится не в texbox.похоже, никакие данные не привязать там

Tejas Vaishnav

если вам нужно связать данные только из одного столбца и многих строк, то только идентификатор строки изменится с идентификатором текстового поля, а если вы свяжете данные одной строки с несколькими столбцами, то имя столбца изменится с тем же идентификатором строки

вы можете получить инкрементный идентификатор строки с помощью цикла for и т. д...

musiw

я не понимаю...можете ли вы показать мне код.я уже пробовал это сделать, но он отображается неправильно..

например, если столбец [5] имеет значение 0, он отображает любое значение.

SqlConnection myConnection = new SqlConnection(connectionString);
DataTable tbl = new DataTable ("Локомотив");
myConnection.Открыть();

строки cmd2 = "выбрать воспользоваться,f_t,дефорсированный,shunting_feeder,ЧП,капитальный ремонт,ремонт локомотивов, где id_class_loco = '" + ddlclass.Свойства selectedIndex + " и дата = '" + текстовое поле textbox1.Текст + "' ";
SqlDataAdapter Ad = новый SqlDataAdapter(cmd2, myConnection);
Объявление.Заполнить(ТБЛ);

//если (ТБЛ.Строк.Граф > 0)
//{
for (int r = 0; r < tbl. Rows.Count; r++)
{
выгода.Текст = ТБЛ.Ряды[Р]["воспользоваться"].Метод toString();
фут.Текст = ТБЛ.Ряды[Р]["F_T"].Метод toString();
сошел с ума.Текст = ТБЛ.Ряды[Р]["дефорсированный"].Метод toString();
СФ.Текст = ТБЛ.Ряды[Р]["shunting_feeder"].Метод toString();
пе.Текст = ТБЛ.Ряды[Р] [ПЭ].Метод toString();
капитальный ремонт.Текст = ТБЛ.Ряды[Р]["пересмотр"].Метод toString();
ремонт.Текст = ТБЛ.Ряды[Р]["ремонт"].Метод toString();

}
//}
myConnection.Закрывать();

musiw

все в порядке, я спрошу кого-нибудь другого.nway спасибо за ваш вчерашний ответ.

Рейтинг:
0

manognya kota

Привет,

Попробуйте привязать текстовое поле, как показано ниже,

Способ 1:
После того как вы получите набор данных,сохраните данные 4-го столбца в переменной и установите значение текстового поля.

txtBox_description.Text = String


Способ 2:
Свяжите столбец набора данных с текстовым полем.

yourtxbxid.DataBindings.Add("Text",dsYourDataSet,"Datasetname.ColumnName");


Пожалуйста, взгляните, например, на приведенную ниже ссылку.

http://www.java2s.com/Code/CSharp/Database-ADO.net/BindDataSettoTextBox.htm[^]

Надеюсь, это поможет.