powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Primary Key
9 сообщений из 9, страница 1 из 1
Primary Key
    #32123508
NightSpider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пытаюсь в таблицу Access пихать строки и втречаются одинаковые значения в Primary Key. Ясное дело, что Access сильно ругается. Как сделать так, что при добавлении новой сроки он удалял строку с повторившемся значением самостоятельно и не ругался.
Insert into aaa (select * from bbb) втавляю склевой выборкой.
...
Рейтинг: 0 / 0
Primary Key
    #32123509
NightSpider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пытаюсь в таблицу Access пихать строки и втречаются одинаковые значения в Primary Key. Ясное дело, что Access сильно ругается. Как сделать так, что при добавлении новой сроки он удалял строку с повторившемся значением самостоятельно и не ругался.
Insert into aaa (select * from bbb) втавляю склевой выборкой.
...
Рейтинг: 0 / 0
Primary Key
    #32123522
Suslik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если это разовая процедура, то добавь, скажем, вот такое условие:

Код: plaintext
1.
...
WHERE bbb.PrimaryKeyField Not In (SELECT PrimaryKeyField FROM aaa)


А иначе это ошибка проектировки базы, и надо приводить её в божеский вид.
...
Рейтинг: 0 / 0
Primary Key
    #32123554
NightSpider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там база метров на 200 и повторяющихся значений 30%, я таким образом и хочу сократить время на обработку. Если он на каждую строку будет формировать по
Код: plaintext
In (SELECT PrimaryKeyField FROM aaa)


то это времени займет уйму. Я думаю, что надо повесит что-то на обработчик ошибки
Вроде появилась ошибка, огда делаем aaa.delete текущую строку, которая и не удовлетворяте условию или где-то вообще поставить опцию - не орать на ошибки, а разбираться со всем самому, килять или сохранять в отдельную таблицу стороки, которые не прошли. А т.к. ни VB, ни Access особо не знаю, а работаю со всем из Delphi, то решил написать сюда. :-)
...
Рейтинг: 0 / 0
Primary Key
    #32123712
NightSpider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В справочнике нашел вот это, но что оно значит не пойму. Помогите разобраться.

Код: plaintext
1.
2.
3.
4.
5.
6.
Конфликты уникальности ключа
Конфликты уникальности ключа могут происходить в следующих случаях. 

В каждой из двух или нескольких реплик добавляется новая запись, имеющая одно и то же значение в поле, которое является первичным ключом или имеет уникальный индекс.


Основная реплика создает уникальный индекс, а другая реплика в то же время добавляет две или более записи с одинаковым значением ключа. Когда изменения в структуре базы данных достигают реплики, имеющей несколько записей с одинаковым значением ключа, то в основную таблицу переносится только первая из них. Остальные записи помечаются для удаления и записываются в таблицу конфликтов. 
...
Рейтинг: 0 / 0
Primary Key
    #32123789
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А репликация-то тут при чем?

Что касается задачи - а почему бы предварительно просто не удалить доп.запросом ненужные строки? Гораздо легче будет.
...
Рейтинг: 0 / 0
Primary Key
    #32123801
NightSpider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне нужно в одну таблицу скинуть данные из многих, в которых нет даже Primary key.
В разных таблицах могут находиться строки с одинаковыми значениями.
Неужели Access не может сам устранить проблему?
...
Рейтинг: 0 / 0
Primary Key
    #32123839
Suslik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такие проблемы сами собой не устраняются. Придётся всё-таки либо предварительно удалять лишние строки, либо использовать Not In.
...
Рейтинг: 0 / 0
Primary Key
    #32123964
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как вариант
можно предварительно удалить все значения примари кей которые будут добавлены
delete aaa where id in (select id from bbb)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Primary Key
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]