![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Ребята всем привет
Вот есть база на Access При импорте данных из Excel нужно сделать проверку на мобильные номера чтоб в таблицу не добавлялись данные если добавляемый номер уже имеется в таблице Код:
//после импорта
for row:=1 to High(a) do
begin
for Row := 1 to Baza.FieldCount-1 do
begin
//вот тут нужно сделать ту самую проверку
//если значение массива a[row,6] уже есть в шестой колонне
//таблицы то его пропускаем
beginПоследний раз редактировалось Electronic_Arts, 10.01.2016 в 18:28. |
|
#2
|
||||
|
||||
|
Забудьте про первый пост
Вопрос такой как Access моментально определяет что такой запись уже существует в базе если на поле выставлено значение не допускать совпадений - если мне для этого на дельфи приходится целую кучу данные проверять. Задача такая есть база есть таблица на excel-е - таблица это форма для заполнения базы мне нужно импортировать данные с excel на эту базу чтоб не допустить совпадений - в моем случае проверка идет по мобильным номерам... как провести данную проверку быстро? чтоб не сравнивать данные между excel-ом и базой - потому что они огромные На Access где у меня база поставил на поле мобильный совпадений не допускать... Когда в дельфи данные сохраняются выводит ошибку что в базе данная запись существует бла бла бла...и все...как перехватить или пропустить эту ошибку? |
|
#3
|
||||
|
||||
|
Может с помощью запроса
Код:
...
with AdoQuery do
begin
Close;
SQL.Text:= 'SELECT COUNT(*) FROM Table_name Where Name_field6=''' + a[row,6] + '''';
Open;
if Fields[0] > 0 then ... // есть в базе
else ... //такого не нашлось;
end;
... |
|
#4
|
||||
|
||||
|
Спасибо огромное решилось проблема моя - мне давно пора переходить на запросы - чем вот мучат себя ...
|