2013-03-13 1 views
0

Я работаю над ним в течение часа, может быть, через 6 часов я не могу заставить его работать, пожалуйста, скажите мне, чего не хватает?Как искать данные в базе данных mysql и добавлять данные поиска в DataGridView с помощью C#?

Итак, для примера у меня есть клиент Уоррен Баффет (он просто пример: D), если я ищу его имя в txtbox, а sqldatabase найдет его имя в строке данных, тогда данные Wafrren Bufet будут добавлены в DataGridView.

Вот код!

 private void button2_Click(object sender, EventArgs e) 
     { 
      MySqlConnection connection = null; 
      string hostname = "localhost"; 
      string database = "aparece_hoteldb"; 
      string username = "root"; 
      string password = ""; 
      connection = new MySqlConnection("host=" + hostname + 
              ";database=" + database + 
              ";username=" + username + 
              ";password=" + password + ";"); 

      string query = "select * from reservations " + 
          "where Client like '%" + txtSearch.Text + "%' OR " + 
           "ClientNumber like '%" + txtSearch.Text + "%' OR " + 
           "RoomNumber like '%" + txtSearch.Text + "%' OR " + 
           "ClientRoomType like '%" + txtSearch.Text + "%' OR " + 
           "AddonService like '%" + txtSearch.Text + "%' OR "+ 
           "TotalHotelRate '%" + txtSearch.Text + "%'"; 

      connection.Open(); 
      List<string>[] detailList = a.mysqlSelect(query); 
      for (int i = 0; i < detailList.Length; i++) 
      { 
       dgvUser.Rows.Add(detailList[i][0], detailList[i][1], detailList[i][2], detailList[i][3], detailList[i][4]); 
      } 

     } 

    } 

} 

Вот изображение!

! [Введите описание изображения здесь] [1]

+0

Цель этой функции заключается в том, что база данных будет загружена данными, но я все равно могу найти имя клиента. – Jayseer

+0

Извините за повторение кодов. Я отредактирую их позже, используя ООП. Теперь важно, чтобы я работал! – Jayseer

+0

Пока что datagridview выше отлично работает чуть ниже, он не работает! – Jayseer

ответ

0

Так вы имеете в виду уже есть данные в DataGridView, и если вы выполняете поиск с помощью TextBox, он будет добавлен в список на DataGridView? Вот мой код:

var detailList = (a.mysqlSelect(query)).ToList(); 
foreach(var dList in detailList) 
{ 
    dgvUser.Rows.Add(dList); 
} 

Но если вы хотите, чтобы только поиск данных на DataGridView, вот мой код:

var detailList = (a.mysqlSelect(query)).ToList(); 
dgvUser.DataSource = detailList; 

Надеется, что это помогает!

EDIT: И, кстати, ваш код в запросе не имеет «как» в TotalHotelRate.

Смежные вопросы