powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
25 сообщений из 33, страница 1 из 2
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147482
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброе время суток!
Коллеги, вопрошаю о помощи всемогущий коллективный разум.
Итак:

Мы, в нашей компании, занимаемся переводом базы 1С ТиС 7.7 (релиз 27) из файлового формата .dbf в формат MSSQL 2000 сервера. Размер базы ~900Mb.
Для этого используется стандартная, описанная, процедура данного перевода: через выгрузку-загрузку файла переноса данных базы.
Но во время загрузки файла переноса в SQL, Конфигуратор1С стопится с ошибкой от SQLя, принтскрин которой я привожу.
На всякий случай вот:

---------------------------------------------------------------------------------------------------------------------------------------
SQL State: 23000
Native: 1505
Message: [Microsoft][ODBC SQL Server Driver][SQL Server]CREATE UNIQUE INDEX terminated because a duplicate key was found for index ID2. Most significant primary key is ' 15N '.

SQL State: 01000
Native: 3621
Message: [Microsoft][ODBC SQL Server Driver][SQL Server] The statement has been terminated.
---------------------------------------------------------------------------------------------------------------------------------------

Телодвижение с пунктом Тестирование и Исправление базы из 1C Конфигуратора- никак на результат не влияет: ошибка не уходит.
Cам я не программист 1С и не SQL dba. Я специалист по сетям..


Что можно сделать с базой или ,возможно, с настройками в SQL2000 чтобы попытаться своими силами решить проблему данной ошибки ?



Заранее благодарен за любую информацию.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147516
tvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
похоже база с косяками. попробуйте сначала тестирование в dbf версии запустить
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147635
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,

Оно тебе ж написало что есть дубли. Открывай табличку в дбф редакторе и исправляй.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147638
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Злой Бобр,

какой самый оптимальный редактор посоветуешь ?
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147639
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,

Любой. Это дело вкуса. Главное ведь результат.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147821
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кстати, а как тут понять - какую именно табличку (какой именно .dbf файл) мне открывать в редакторе DBF ?

вопрос тупой согласен. но я не знаю структуру таблиц 1С и прочую матчасть конкретно в этой области.

благодарю за ответ
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147865
Bone serpent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,
В строке состояния пишет "Создание индексов таблицы: Справочник Место".
Значит открываем файл 1cv7.dd в базе DBF. Ищем указанный справочник.
Будет что-то типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
#===============================================================================
#==TABLE no 50     : Справочник Место
# Name    |Descr                         |Type[A/S/U]|DBTableName|ReUsable
T=SC33735 |Справочник Место      |A          |SC33735    |1
#-----Fields-------
# Name      |Descr               |Type|Length|Precision
F=ID        |ID object           |C   |9     |0
F=PARENTEXT |Parent in other tabl|C   |9     |0
F=ISMARK    |Flag Object is Marke|C   |1     |0
F=VERSTAMP  |Version stamp       |C   |6     |0

SC33735 - имя DBF-файла (у вас, конечно, другое имя)
Дальше открываем файл подходящим редактором (вполне неплох CDBF), ищем в колонке ID указанное в ошибке значение ключа '15N'. И решаем, что делать с дублирующимися записями.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39147911
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242кстати, а как тут понять - какую именно табличку (какой именно .dbf файл) мне открывать в редакторе DBF ?

вопрос тупой согласен. но я не знаю структуру таблиц 1С и прочую матчасть конкретно в этой области.

благодарю за ответ
Смотрим в Монитор на чем именно затык. Строка состояния иногда совпадает а иногда нет, поэтому на нее я не смотрю.
Описание таблиц в файле 1cv7.dd в каталоге базы.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39150217
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Bone serpentSteve242,
В строке состояния пишет "Создание индексов таблицы: Справочник Место".
Значит открываем файл 1cv7.dd в базе DBF. Ищем указанный справочник.
Будет что-то типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
#===============================================================================
#==TABLE no 50     : Справочник Место
# Name    |Descr                         |Type[A/S/U]|DBTableName|ReUsable
T=SC33735 |Справочник Место      |A          |SC33735    |1
#-----Fields-------
# Name      |Descr               |Type|Length|Precision
F=ID        |ID object           |C   |9     |0
F=PARENTEXT |Parent in other tabl|C   |9     |0
F=ISMARK    |Flag Object is Marke|C   |1     |0
F=VERSTAMP  |Version stamp       |C   |6     |0
SC33735 - имя DBF-файла (у вас, конечно, другое имя)


Bone serpent, thnx a lot!

файл со справочником нашел.
нашел также запись ошибочного ключа.

Дальше открываем файл подходящим редактором (вполне неплох CDBF), ищем в колонке ID указанное в ошибке значение ключа '15N'. И решаем, что делать с дублирующимися записями.

теперь самый основной для меня вопрос:

- что мне делать с этой стройкой ? Удалить ? или может как-нибудь отредактировать ??
Это может както деструктивно повлиять на работу 1С в целом и вылезти где-нибудь боком при дальнейшей работе ?

привожу принскрин проблемного куска с этим ключом
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39150266
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно смотреть описание таблиц, точнее раздел их индексов, в аналогичном файле каталога базы подключаемой к SQL (расширение файла dds). Без этого запись трогать не следует!!! Т.к. само значение ' 15N ' поля ID корректно, иначе ТИИ её поймало.

Пути решения:
1) Перед выгрузкой из DBF базы удалить этот индекс;
2) Перед повторной загрузкой (возможно какой-то из вариантов и не рабочий, давно всё это было...)
2.1) Файле dds поменять описание индекса на не уникальный;
или
2.2) В таблице SQL поменять определение индекса;
3) Но самый правильный - разобраться с данными, но это уже не совсем техническая задача.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39150620
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,

Твой принт ниочем. Тебе написало что есть дубли. Так что сортируй по ИД и смотри на дубль.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39150740
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Злой Бобр,

ну это я понял.. Что мне дальше делать с этими дублями ?

Вопрос: _по какому принципу_ необходимо обрабатывать дубли (я так понял- удалять) ? Какой из дублей нужно оставить, а какой удалить - как это определить вообще ?
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39150814
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,

Ну смотри что за информация в записях. Посмотри в справочнике на эти записи. Смотри где задействованы эти ИД. Ну и т.д. Исходя из этого уже и принимаешь решение что делать.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151048
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AHDPНужно смотреть описание таблиц, точнее раздел их индексов, в аналогичном файле каталога базы подключаемой к SQL (расширение файла dds). Без этого запись трогать не следует!!! Т.к. само значение ' 15N ' поля ID корректно, иначе ТИИ её поймало.

Пути решения:
1) Перед выгрузкой из DBF базы удалить этот индекс;
2) Перед повторной загрузкой (возможно какой-то из вариантов и не рабочий, давно всё это было...)
2.1) Файле dds поменять описание индекса на не уникальный;
или
2.2) В таблице SQL поменять определение индекса;
3) Но самый правильный - разобраться с данными, но это уже не совсем техническая задача.

можно поподробнее: файл с расширением .dds - он где именно находится ? в каталоге с базой для SQLя ?
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151049
Bone serpent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,

Не-не, никакого DDS. Проблема в DBF базе, значит смотрим её и 1CV7.DD
Разбираться именно с данными надо. Всё остальное - от лукавого и проблему, на самом деле, не решает.
Найти в файле DBF записи с неуникальным идентификатором, по значению полей решить, какая из записей более валидная, лишнюю удалить.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151078
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,

Да, в каталоге базы, которая подключена к SQL. Смотрите описание (из каких полей состоит) индекса ID2.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151271
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bone serpentНайти в файле DBF записи с неуникальным идентификатором, по значению полей решить, какая из записей более валидная, лишнюю удалить .
Это только если записи полей одинаковые, что бывает не так часто. А то автор по наивности удалит то что не нужно и вазелин ему уже не поможет.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151277
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AHDPSteve242,

Да, в каталоге базы, которая подключена к SQL. Смотрите описание (из каких полей состоит) индекса ID2.
Ну что за очередная глупость. ID2 это не поле, а поле ID и количество дублей 2. Помогать это хорошо, но только помогайте правильно а не дезинформируйте автора - он по ходу совсем зеленый и по наивности верит всему что говорят.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151485
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Злой Бобр,
Steve242,

Прошу прощения, похоже я совсем забыл 7.7.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151887
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
друзья,

после многочасового секса и курения манов, раскопал в соответствующем таблице .dbf- следующее: см.аттач..

Вопрос:

- какую запись из 2х удалять ?
как видно на картинке они различаются только лишь значением поля VERSTAMP: H и S (а может это- пятерка?)

прочитал про поле VERSTAMP. это типа версия записи во времени.

Итак, какой VERSTAMP 'свежее': H или S ?
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151970
tvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у одной из записей стоит пометка удаления- в поле ismark стоит звездочка. если возможно то зайти в базу в режиме предприятия и сделать поиск ссылок на эту запись. если есть то заменить на другой, если нет то смело можно удалять
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39151985
host.13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Базулька.. dbf.. mssql-2000.. 2016..
Спец по сетям в роли dba..
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39152072
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Steve242,

В таком случае удаляйте любую запись, а в VERSTAMP поставьте 0 (как в принте выше). По сути вы кривыми ручками что-то с УРБД накосячили. Я б прошелся по всем справочникам на предмет дублей, прежде чем снова пытаться впихивать все в скуль.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39152082
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+ Упс. Немного ошибся. Вторую запись оставляй, VERSTAMP не меняй.
Эх, давно это было.
...
Рейтинг: 0 / 0
SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
    #39152300
Steve242
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
host.13,

да. чем только не приходится заниматься
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / [игнор отключен] [закрыт для гостей] / SQL2000 отфутболивает при попытке залить в него базульку 1C77 ТиС
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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