|
|
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
/topic/127789 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 12:48 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Проблема в полях TEXT. Если их в приемнике (sybase table) заменяю на varchar(4000), конвертятся все записи без ошибок. Может, есть какая-то команда или опция управления мемо-полями или их загрузкой в память? Кто-н может рассказать, как Sybase (ASE 12.5.03) сервер работает с text-полями? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 14:38 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
В принципе, так же, как и MSSQL. Что более конкретно интересует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 16:06 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
2 MasterZiv интересует то, что может иметь отношение к размерам, выделяемым по умолч. для text-поля, его загрузки в память - когда это происходит, а также не являются ли все text-поля в таблице отдельным "объектом" (см. ошибку) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 16:59 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
В какой-такой памяти ? Все текст-поля в отдельной таблице являются одним и тем же полем разных записей этой таблицы. Никаких размеров, выделяемых по умолчанию, не существует - сколько нужно, столько и выделят. Собственно, все так же, как и в MSSQLServer, если ты знаешь, как там. Единственное, в ASE переменные типа text не могут быть параметрами процедур, а в MS - могут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 17:43 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
В ASE при закачке для мемо полей используется размер 32кб, в bcp для борьбы с этим есть параметр -T. When you copy out text or image data, Adaptive Server, by default, copies only the first 32K of data in a text or image field. The -T text_or_image_size parameter allows you to specify a different value. For example, if the text field to copy out contains up to 40K of data, you can use the following command to copy out all 40K: bcp pubs2..publishers out -T40960 Не совсем понял как именно закачиваются данные, но возможно проблема связана с этим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 20:06 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
К insert это отношения не имеет, там все выделяется динамически. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 20:08 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Интересная мысль (может кто подтвердит или опровергнет): Конвертация таблицы из 300 000 записей начинает экспортироваться, и даже успеват закачать на Sybase сервер n-записей (по попыткам - 1 раз - 10780 шт., 2-й - 76025, 3-й - 44224, но не все!;) - и потом указанная ошибка "Требуется запустить объект". А другая таблица из 237000 записей вчера вечером прошла вся... Похоже, это связано с работой сервера в момент закачки - выделением памяти, открытием объектов, кэшем ИЛИ УЖ ЧЕМ НЕ ЗНАЮ! Какие есть настройки на сервере Sybase, которые на это могут влиять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 11:35 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Andrey TsКакие есть настройки на сервере Sybase, которые на это могут влиять? Поведай нам, как ты это делаешь, подробнее. Никаких настроек нет. Ну разве что ты положил таблицу или только текстовое поле на отдельный сегмент и там кончилось место. Но тогда ты бы скорее всего об этом знал и не задавал бы эти вопросы. Описываемые тобой "аномалии" могут возникать при ошибках данных - одни данные заливаются, другие - нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:12 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Упрощенно... MS SQL 2000 Import/Export Wizard: 1. Source - MS SQL OLE DB Сервер1 2. Destination UDL - Sybase ASE OLE DB Provider Сервер2, логин, пароль 3 Select table для экспорта... 4. Запуск ... Пошло копирование...1000,2000,3000,... n - Возникла ошибка (см файл): ИНТЕРЕСНО, что вчера таблица из 237000 записей конвертилась без этой ошибки только с четвертого раза (при этом настройки НЕ менялись!) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:22 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Я не могу тебя проконсультировать по поводу этого визарда в MSSQL - это к тем, которые MSSQL используют. Но я подозреваю, что все гораздо проще - оно там хочет какой-то объект создать, видимо, при работе этого OLEDB провайдера, и не может. Ты не хочешь просто BCP попробовать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:27 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Попробую. просто я с BCP еще не работал, придется покопаться... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:30 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Там тоже с BLOB-ами непросто будет. Надо будет форматный файл писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:31 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
это слишком геморно. лучше я преобразую text в varchar(8000) на время конвертирования, а потом верну ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:34 |
|
||
|
Ошибка конвертирования БД из MS SQL на Sybase
|
|||
|---|---|---|---|
|
#18+
Решение (точнее, обход проблемы конвертирования) 8-0 (уффф- 2 недели возился) Проблема возникает при переносе БОЛЬШОГО кол-ва строк в таблице, содержащей поле text 1. Модифицировал на sybase все такие таблицы (где > 1000 записей) с полями text с макс. длиной данных < 1800 в varchar(1800) 2. При запуске Import/Export Wizard НЕ ПЕРЕНОШУ данные непосредственно на Sybase, а создаю DTS-пакет 3. Правлю пакет: а) перед каждым переносом в таблицы с identity column добавляю "Execute SQL Task", где устанавливаю SET IDENTITY_INSERT <TABLE> ON (грабля - для Sybase установка этого флага в Import/Export Wizard не работает!!!) б) перенос самой большую таблицу с полем text разбил на 3 этапа: - сначала конвертить в основную таблицу все записи с DATALENGTH(text_column)>1800 (их порядка 1000 шт.), - затем остальные записи переношу в дополн. временную таблицу TMP_TABLE такой же структуры,(но с полем text_column типа varchar(1800)) потом добавляю в доп. таблицу колонку text_column2 типа text и делаю UPDATE TMP_TABLE SET text_column2=text_column (ибо еще одна грабля - в Sybase ASE не работает вставка из varchar(1800) в text !!!) - делаю INSERT INTO TABLE (...) SELECT ... FROM TMP_TABLE - DROP TABLE TMP_TABLE 4. Запуск DTS - часа на 3 !!! Всем спасибо за участие. Помогла идея о разделении таблиц на более мелкие части + раскопки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2004, 17:38 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=32751119&tid=2014135]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
158ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 264ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...