Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.12.2011, 06:12   #1
royun
Пользователь
 
Регистрация: 20.05.2011
Сообщений: 67
По умолчанию Проверка импортируемых данных на существование

Добрый день.

Есть код который делает импорт данных из StringGrid в таблицу MS SQL Server 2000

Код:
ADODataSet1.DisableControls;
  try
    ADODataSet1.First;
    for iRow := StringGrid2.FixedRows to StringGrid2.RowCount - 1 do begin
    if StringGrid2.Cells[1,iRow] <> '' then
      begin
      ADODataSet1.Insert;
      ADODataSet1['Date'] := StrToDateTime(StringGrid2.Cells[1, iRow]);
      ADODataSet1['AbonentA'] := StringGrid2.Cells[2, iRow];
      ADODataSet1['AbonentB'] := StringGrid2.Cells[3, iRow];
      ADODataSet1['Vremia'] := StringGrid2.Cells[4, iRow];
      ADODataSet1['Dlit'] := StringGrid2.Cells[5, iRow];
      ADODataSet1['Dlit_fakt'] := StringGrid2.Cells[6, iRow];
      ADODataSet1['Vh_trunk'] := StringGrid2.Cells[7, iRow];
      ADODataSet1['Ish_Trunk'] := StringGrid2.Cells[8, iRow];
      ADODataSet1['Prichina'] := StringGrid2.Cells[9, iRow];
      ADODataSet1['Zona'] := StringGrid2.Cells[10, iRow];
      ADODataSet1.Post;
      end;
    end;
  finally
    ADODataSet1.EnableControls;
end;
Надо осуществить проверку импортируемых данных на существование в таблице.
royun вне форума Ответить с цитированием
Старый 29.12.2011, 08:20   #2
royun
Пользователь
 
Регистрация: 20.05.2011
Сообщений: 67
По умолчанию

Итак, надо было сделать вот такую проверку хотя бы по двум столбцам:

Код:
SELECT Count(*) AS Cnt FROM TableName WHERE Date = :D AND Vremia = :V
Если поле Cnt >0, то такие записи существуют.
royun вне форума Ответить с цитированием
Старый 29.12.2011, 09:50   #3
rdama
Форумчанин
 
Аватар для rdama
 
Регистрация: 25.07.2009
Сообщений: 533
По умолчанию

А повесить уникальный индекс на таблицу? А сделать это триггером?
Не модно? Религия? Знания?
И не надо городить дурной код.
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA)
rdama вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка на существование диска IvanPo Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 27.05.2011 07:53
Проверка на существование файлов Vohakisa Помощь студентам 5 01.06.2010 16:40
проверка на существование папки D_E_N Общие вопросы Delphi 3 05.10.2009 22:48
Проверка на существование Lonix Общие вопросы Delphi 2 19.03.2007 19:42