forum.bitel.ru
http://forum.bitel.ru/

SQL запрос и параметрт типа флаг
http://forum.bitel.ru/viewtopic.php?f=22&t=9965
Страница 1 из 1

Автор:  zavndw [ 26 ноя 2014, 13:12 ]
Заголовок сообщения:  SQL запрос и параметрт типа флаг

Имеет ли смысл запросом устанавливать значения флага?

Автор:  Phricker [ 26 ноя 2014, 13:37 ]
Заголовок сообщения:  Re: SQL запрос и параметрт типа флаг

Каким из?
Код:
public void updateFlagParam(int cid, int pid, boolean value, int userId)
  {
    int changeRows = 0;
    ResultSet rs = null;
    PreparedStatement ps = null;
    try
    {
      int index = 1;
      int foundRows = 0;
      ps = this.con.prepareStatement("SELECT count(*) FROM contract_parameter_type_5 WHERE cid=? AND pid=?");
      ps.setInt(index++, cid);
      ps.setInt(index++, pid);
      rs = ps.executeQuery();
      while (rs.next()) {
        foundRows = rs.getInt(1);
      }
      rs.close();
      ps.close();
     
      index = 1;
      if (foundRows == 0)
      {
        ps = this.con.prepareStatement("INSERT INTO contract_parameter_type_5 SET cid=?, pid=?, val=?");
        ps.setInt(index++, cid);
        ps.setInt(index++, pid);
        ps.setBoolean(index++, value);
        changeRows = ps.executeUpdate();
        ps.close();
      }
      else
      {
        ps = this.con.prepareStatement("UPDATE contract_parameter_type_5 SET val=? WHERE cid=? AND pid=? AND NOT(val<=>?)");
        ps.setBoolean(index++, value);
        ps.setInt(index++, cid);
        ps.setInt(index++, pid);
        ps.setBoolean(index++, value);
        changeRows = ps.executeUpdate();
        ps.close();
      }
    }
    catch (Exception ex)
    {
      ex.printStackTrace();
    }
    if ((changeRows > 0) && (checkParameterHistoryLogging(pid))) {
      updateFlagParamLog(cid, pid, Boolean.valueOf(value), userId);
    }
  }

Автор:  zavndw [ 26 ноя 2014, 13:51 ]
Заголовок сообщения:  Re: SQL запрос и параметрт типа флаг

Вообще INSERT, но у нас есть список cid'ов через sql добавляем но в параметрах договора не отображается положение флага. а значение флага у нас фиксированное

Автор:  Phricker [ 26 ноя 2014, 13:53 ]
Заголовок сообщения:  Re: SQL запрос и параметрт типа флаг

zavndw писал(а):
Вообще INSERT, но у нас есть список cid'ов через sql добавляем но в параметрах договора не отображается положение флага. а значение флага у нас фиксированное

А завтра сделаете INSERT на тот договор у которого уже установлен флаг.
Что будет?

Автор:  zavndw [ 26 ноя 2014, 13:56 ]
Заголовок сообщения:  Re: SQL запрос и параметрт типа флаг

завтра делать не будем, это одноразовая процедура, и список сидов состоит из договоров где значение флага ни когда не устанавливалось

Автор:  avmag [ 06 дек 2014, 11:29 ]
Заголовок сообщения:  Re: SQL запрос и параметрт типа флаг

По теме - Задача: есть файл *.csv со списком договоров ~20тыс. в которых необходимо включить данный параметр, соответственно возник вопрос: какие действия нужно выполнить для включения данного параметра в биллинге и достаточно ли для этого добавления в таблицу
contract_parameter_type_5(хранит ~1тыс записей) строк с необходимыми значениями cid и pid?

Автор:  stark [ 09 дек 2014, 13:41 ]
Заголовок сообщения:  Re: SQL запрос и параметрт типа флаг

avmag писал(а):
По теме - Задача: есть файл *.csv со списком договоров ~20тыс. в которых необходимо включить данный параметр, соответственно возник вопрос: какие действия нужно выполнить для включения данного параметра в биллинге и достаточно ли для этого добавления в таблицу
contract_parameter_type_5(хранит ~1тыс записей) строк с необходимыми значениями cid и pid?



Теоретически да.

Автор:  zavndw [ 09 дек 2014, 13:47 ]
Заголовок сообщения:  Re: SQL запрос и параметрт типа флаг

а если сделали но значение поля из клиента не соответствует установленному?

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/