|
Добавление данных
|
|||
---|---|---|---|
#18+
Имеется таблица. Ключ по 4м полям. Добавляю данные из тексового файла(BCP). Новые должны добавиться, повторяющиеся отброситься. Но этого не происходит. Процесс останавливается и появляется сообщение о дубликатах ключа. Что делать? Помогите кто может. Андрей ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2001, 10:40 |
|
Добавление данных
|
|||
---|---|---|---|
#18+
А ключ -m утилиты bcp.exe используется ? Из BOL "Specifies the maximum number of errors that can occur before the bulk copy operation is canceled. Each row that cannot be copied by bcp is ignored and counted as one error. If this option is not included, the default is 10." Только надо помнить, что считаться будут все ошибки добавления, а не только ошибки нарушения уникальности ключа. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2001, 10:47 |
|
Добавление данных
|
|||
---|---|---|---|
#18+
-m учитываеть только ошибки преобразования типа, а не ошибки нарушения уникадьности ключа. Надо: Сгенери табличку с такой же структурой как основная; перед применением Bcp чисти ее truncate-ом; при использовании bcp - закачивай данные в эту временную таблицу; потом что-то вроде delete from temptable t from basetable b where t.ke1=b.key1 and t.ke2=b.key2 and t.ke3=b.key3 and t.ke4=b.key4 insert into basetable select * from temptable (basetable - основная таблица; temptable - временная) Да, если в самом закачиваемом файле могут встречаться строки с нарушением идентичности ключа, то в temptable сделай все столбцы неключевыми. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2001, 11:27 |
|
|
start [/forum/topic.php?fid=46&fpage=3587&tid=1827208]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
others: | 258ms |
total: | 376ms |
0 / 0 |