На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> Добавление записи из Datagridview в базу данных mysql
    M
    Ali002 учитесь пользоваться тегом Быстрая цитата чтобы нормально выделять текст.

    Цитата Ali002 @
    а как вывод даты поменять чтоб без времени?

    Дату без времени можно выводить с помощью
    ExpandedWrap disabled
      var dateTime = DateTime.Now.ToString("yyyyMMdd");

    Будет выведена дата одной строкой. Такой тип записи доступен для вставки в MS SQL. Проверяйте подойдет к MySQL уже сами.

    Цитата Ali002 @
    вы пропустили запятую между value я поставил только вот теперь он вставляет после последнего значения запятую как это предусмтреть чтоб после последнего не вставлялась запятая

    как то так. Переписал немного код который вам дал maxim84_
    ExpandedWrap disabled
      private void toolStripButton2_Click(object sender, EventArgs e)
      {
          // добавление записей в таблицу
          string lastvo = sqlClass.getIndex("SELECT MAX(Id_company) AS last fROM company");
       
          for (int l = 0; l < dataGridView1.RowCount; l++)
          {
              string insert = BuildSqlQueryFromRow(lastvo, dataGridView1.Rows[l]);
              sqlClass.InsertUpdate(insert);
          }
      }
       
      private string BuildSqlQueryFromRow(string companyId, DataGridViewRow row)
      {
          var builder = new StringBuilder();
       
          builder.Append("insert into company (Id_company, address, nachalo_sotrudnichestva, vozmojnost_adaptacii,  korporativ_obuchenie, otzyvy, chernyi_list, BIN_RNN, primechanie, nalichie_dogovorov, opyt_sotrudnichesva, kolich_obuch) ");
          builder.Append("values (");
       
          var data = new List<string>();
          data.Add(string.Format("'{0}'", companyId));
                  
       
          foreach (DataGridViewCell cell in row.Cells)
          {
              data.Add(string.Format("'{0}'", cell.Value));
          }
       
          builder.AppendFormat("{0}", string.Join(",", data));
          builder.Append(")");
       
          return builder.ToString();
      }

    Если вы знаете количество колонок то можете написать значения как то так.
    ExpandedWrap disabled
      private void toolStripButton2_Click(object sender, EventArgs e)
      {
          // добавление записей в таблицу
          string lastvo = sqlClass.getIndex("SELECT MAX(Id_company) AS last fROM company");
       
          for (int l = 0; l < dataGridView1.RowCount; l++)
          {
              string insert = BuildSqlQueryFromRow(lastvo, dataGridView1.Rows[l]);
              sqlClass.InsertUpdate(insert);
          }
      }
       
      private string BuildSqlQueryFromRow(string companyId, DataGridViewRow row)
      {
          var builder = new StringBuilder();
       
          builder.Append("insert into company (Id_company, address, nachalo_sotrudnichestva, vozmojnost_adaptacii,  korporativ_obuchenie, otzyvy, chernyi_list, BIN_RNN, primechanie, nalichie_dogovorov, opyt_sotrudnichesva, kolich_obuch) ");
          builder.Append("values (");
       
          var data = new List<string>();
          data.Add(string.Format("'{0}'", companyId));
                  
          data.AddRange(new[]
              {
                  string.Format("'{0}'", row.Cells[1].Value.ToString()),
                  string.Format("'{0}'", row.Cells[2].Value.ToString("yyyyMMdd")), //предположил что это дата
                  string.Format("'{0}'", row.Cells[3].Value.ToString()),
                  string.Format("'{0}'", row.Cells[4].Value.ToString()),
                  string.Format("'{0}'", row.Cells[5].Value.ToString()),
                  string.Format("'{0}'", row.Cells[6].Value.ToString()),
                  string.Format("'{0}'", row.Cells[7].Value.ToString()),
                  string.Format("'{0}'", row.Cells[8].Value.ToString()),
                  string.Format("'{0}'", row.Cells[9].Value.ToString()),
                  string.Format("'{0}'", row.Cells[10].Value.ToString()),
                  string.Format("'{0}'", row.Cells[11].Value.ToString())
              });
       
          builder.AppendFormat("{0}", string.Join(",", data));
          builder.Append(")");
       
          return builder.ToString();
      }
    Сообщение отредактировано: Craft -
    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0182 ]   [ 16 queries used ]   [ Generated: 16.04.24, 06:05 GMT ]