|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.08.2013, 00:09 | #1 |
Пользователь
Регистрация: 10.12.2012
Сообщений: 64
|
SQLite: как избежать дублирования записей
Доброй ночи! Опять у меня затык. Импортирую из TXT в SQLite данные. Первый раз импортируются все записи, но со временем некоторые записи могут изменится, соответственно такие записи будут вновь импортированы из TXT. Важно, что импортируются конкретно те записи, в которых произошли изменения с момента первоначальной загрузки, а не вся таблица целиком. Сейчас эти "измененные" записи добавляются в конец таблицы, и соответственно дублируются в некоторых полях. Например.
Было сначала: Job;Ivan Petrov;12345; Стало: Job;Ivan Petrov;12222; А в таблице будет уже 2 Ivan Petrov. Job;Ivan Petrov;12345; Job;Ivan Petrov;12222; А нужно чтобы запись с последними изменениями заменила собой устаревшую запись. Это по идее нужно делать в менджере БД SQLITE. Но у меня пока не получилось. Я пользуюсь SQLite Expert Personal. Primary Key и вообще индексов нет. Подскажите как настроить базу? |
10.08.2013, 09:17 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А откуда записи попадают в ТХТ файл?
I'm learning to live...
|
10.08.2013, 11:02 | #3 |
Пользователь
Регистрация: 10.12.2012
Сообщений: 64
|
|
10.08.2013, 16:08 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
О! Так наверное лучше если бы сам экспорт в 1С подключался к базе и писал в нее?
Или у тебя к конфе нет доступа чтоб ее допилить?
I'm learning to live...
|
10.08.2013, 16:20 | #5 |
Пользователь
Регистрация: 10.12.2012
Сообщений: 64
|
|
10.08.2013, 16:43 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Коль вопрос в разделе дельфи, то почему нельзя програмно это сделать? Если уж ключей нет, то нужно как-то определиться - какие поля считать условно-ключевыми, например фамилия и если таковая найдена в базе, то обновить эту запись, иначе создать новую. По другому навряд-ли и никакой менеджер не поможет, если в него не заложены подобные возможности
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
10.08.2013, 16:55 | #7 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
I'm learning to live...
|
||
10.08.2013, 16:59 | #8 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
10.08.2013, 17:20 | #9 | |
Пользователь
Регистрация: 10.12.2012
Сообщений: 64
|
Цитата:
Еще запрос как-то криво работает. Код:
Последний раз редактировалось Stilet; 10.08.2013 в 19:29. |
|
10.08.2013, 19:31 | #10 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
О! Еще один вопрос: А зачем удалять дубликаты? Я так понимаю данная таблица не является справочником, а скорее логом. Так может быть дубликаты удалять там не нужно никак?
I'm learning to live...
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как избежать циклической формулы? | KJ_ya | Microsoft Office Excel | 4 | 27.01.2013 22:22 |
Как избежать излишнего использования :: | invector | Помощь студентам | 2 | 28.09.2011 14:54 |
как избежать подвисания | Juffin | Общие вопросы Delphi | 12 | 18.05.2011 23:41 |
Как избежать Selection? | Мультипликатор | Microsoft Office Word | 10 | 21.06.2010 17:15 |
как избежать кэширования в Опере | rolling | PHP | 3 | 01.12.2009 18:34 |