powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переход от MDB к ADP
25 сообщений из 62, страница 2 из 3
Переход от MDB к ADP
    #32800606
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
База довольно приличная.
ИМХО, здесь нужно исходить из времени. Если его много и в спину не дышат, то прав incold - писать с нуля, учитывая что, нужно время на освоение T-SQL.
Если нет - тогда конвертировать mdb в adp. Времени уйдет меньше, но нужно будет мирится с тем, что логика останется на клиенте и полностью преимущества сервера не будут использованы.
Нужно сразу переписать код с DAO на ADO (можно это сделать еще в mdb)
Просмотреть запросы на предмет использования пользовательских функций и функций Access - они работать не будут. Нужно искать либо другие пути или создавать аналоги в виде функций на сервере. Полетят и все запросы с использованием параметров в виде =Form!мояФорма!поле и т.д. Т.е. от запросов мало что останется неизменным.
А потом долгая возня с источниками форм, отчетов и контролов. Чистый выигрыш на этом варианте - не нужно переделывать дизайн и минимальное знание T-SQL. Но это тоже немало.
Еще более прост вариант с OBDC - менять меньше, но и преимуществ еще меньше.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32800707
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
формы переделывать всё равно придется. меньше , но тут подправить, там немного...
в основном переделывание запросов в хп.
переходить не сложно , просто много времени...
а переписыват заново.... продумывать дизайн, логику работы....
я бы не сталлл....
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32800809
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист-Любитель Есть пошаговый отладчик с просмотром переменных для процедур.
Это где это так?

Alexander G Нужно сразу переписать код с DAO на ADO (можно это сделать еще в mdb)
Думаю если переходить на ADP то даже если в mdb переписать все на ADO, потом все равно придется повторно код переписывать с учетом что sql конструкции будут обрабатываться на сервере, разве не так?

ODBC не подходит это понятно, судя по форуму далеко не лучший вариант, тормоза и глюки обоспечены.

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


Вчера всю голову сломал пока пытался найти лучшее решение, варианты были такие:
1) Оставить все как есть и не париться :) При достижении базой 2-х гигов вынести некоторые таблицы в отдельные mdb
2) Перекинуть таблицы на сервер, прилинковать к базе и готовиться к тормозам
3) Писать на VB.NET все формы с нуля.

Лучший фариант это конечно брать по одной форме и перекидывать на ADP и смотреть какие таблицы она тянет, т.е. по тихоньку отлаживать новый проект перенося по одной форме. Причем надо как-то уже на этом этапе обеспечить возможность работы с перенесенными таблицами и новыми формами, потому что если перенести все таблицы на сервер оставив работать юзеров в старой базе, перелопатить новый проект, потом залить свежие данные в серверные таблицы и сразу дать юзерам работать с проектом, вылезет множество недосмотренных багов, причем сразу в нескольких местах и поправить это все в реальном времени наиболее оперативно не получится. Лучше как-то по одной форме переносить и давать сразу юзерам с этим работать чтобы в нормальном темпе можно было убрать баги.
Голова кругом короче, не знаю как подступиться...
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32800821
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я немного смешал в одну кучу Enterprise Manager и Query Analyzer.

Написанное про стиль работы относилось к QA. Там же по правой кнопочке мыши на процедуре чудесная опция Debug...
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32800843
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем-то в клиентской части остается ТОЛЬКО визуализация данных. Загоняние агрументов в вызов хранимых процедур и всякие where и order by. Я предпочитаю формировать полную sql конструкцию для источника данных форм сам в коде VBA. Не пользуюсь LinkMaster/DetailFields подчиненных форм, не пользуюсь свойствами Filter и OrderBy форм.

Формы, открываемые как обычные (acForm а не acDatasheet) у меня имеют в качестве источника записей единственную, на которую наложено что-то вроде PrimaryKey=конкретное значение.

Это сделано по определенным соображениям. Условия отбора и сортировки контролируются моей логикой разработчика и не могут быть испорчены или заданы неправильно пользователем. Как правило для штатной работы нужна небольшая, но определенная выборка данных.

Открытие форм, опирающихся на единственную запись не тащит с сервера большой объем данных. Когда они (данные) представляют собой сложные суммирующие запросы по большой базе, форма может просто не успеть открыться за отведенное ей время (лимит ожидания ответа от поставщика данных). Для перехода между записями надо вернуться в табличную форму и ходить по ней или нажать самодельные кнопочки "Поиск".
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32800852
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЛучший фариант это конечно брать по одной форме и перекидывать на ADP и смотреть какие таблицы она тянет, т.е. по тихоньку отлаживать новый проект перенося по одной форме

правильный вариант.

дополнение

необходимо с использованием DTS сделать переност данных из мдб в sql
причем это нада сделать сначала. скорее всего что просто перенести данные из мдб не получится.(шаг на который стоит обратить внимание)

пренести данные и по одной форме переносить клиента.
при таком варианте можно коверкать при отладке данные в sql , и в любой момент получить новые, правильные данные .

и к моменту перехода на новую версию просто запустив DTS получить базу с последними данными уже в SQL.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32800984
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А получится ли так в конце залить все рабочие данные чтобы не возникло вопросов с ключами, нулевыми полями и прочим?
Почему кстати лучше делать это через DTS, а не через визарды Access 2002?
Пока разбираюсь с вопросом переноса базы, читал в поиске что DTS не очень корректро переносит данные.
В любом случае без скурпулезной проверки всех параметров таблицы от значений по умолчанию, до соответствию типов полей исходням таблицам не обойтись.
Теперь по переработке форм. Придется проверять каждый элемент на форме на наличие кода. Я уже имел опыт переноски приложения написанного на VB на ADP платформу. Получилось так что некоторый код был упущен, слишком уж утомительно каждый элемент проверять, все не упомнишь.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801013
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист-Любитель Написанное про стиль работы относилось к QA. Там же по правой кнопочке мыши на процедуре чудесная опция Debug...
Где это чудо? Не нашел чего-то.
Т.е. в QA я например пишу exec sp_GetStorage и где я должен кликнуть чтобы найти дебаг?
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801021
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА получится ли так в конце залить все рабочие данные чтобы не возникло вопросов с ключами, нулевыми полями и прочим?

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

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

и для отладки необходимы данные которые можно портить.


а формы я переношу так:
создаю адр (таблицы сданными должны у же быть готовы).
формы - импорт - мдб - выбираю одну головную фому, ежели помню подчиненные - их тоже.
источник данных переделываю на хп
запускаю головную.
она на чём-то вылетает.
смотрю где - переделываю и т.д.


кажется долго, зато по шагам и надежно.

пользоваться визардами не понравилось.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801078
Esquel_net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexander G Полетят и все запросы с использованием параметров в виде =Form!мояФорма!поле и т.д. Т.е. от запросов мало что останется неизменным.


Извините, можно конкретный вопрос: как переделать подобный запрос?

Напрашивается (предлагает "преобразователь" Access) :

ALTER FUNCTION dbo.Запрос(@Forms___МояФорма___Поле int)
RETURNS TABLE
AS RETURN (SELECT DISTINCT тТаблица . КодТаблицы, ...
FROM тТаблица ...
WHERE (((тТаблица.КодТаблицы)=@Forms___МояФорма___Поле)))

- но не работает. Что же нужно вместо @Forms___МояФорма___Поле??
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801108
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идем в QA.

Встаем на нужную БД.

В левой части - броузер объектов. Открываем хранимые процедуры, выбираем нужную и кликаем правой кнопкой мышки. В меню есть заветный пункт "Debug".

В седьмом, по-моему, такого еще не был. Начиная с 2000 сервера.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801176
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПрограммист-Любитель
Что ж ты раньше-то молчал все эти годы??? :)
Блин, кто бы подумал что там еще и браузер объектов есть. Попробую сегодня этот чудодейственный дебаг, спасибо! :)

вадя
Я тебя немного непонял, сначала мы заливаем через DTS все таблицы как получится, ковыряем их проверяем, перетаскиваем из базы формочки в проект и уговариваем их работать с этими таблицами.
Все, написали проект. Все как бы работает.
Теперь как нам перелить свежие данные в таблицы на сервере? Ты уверен что они без проблем зальются туда? И потом если ты где-то что-то проглядел при перестройке форм (неизбежно) и юзеры начнут работу с базой, причем каждый со своей областью, то эти глюки повылазят в большом количестве и ты не успеешь все их убрать чтобы не поднялся ор или не потерялось много данных.
Я же говорю о том как бы сделать перенос по одной формочке и причем после ее отладки сразу дать народу работать с ней, паралельно продолжая работать со старой базой, но в которой это формы уже нет. Т.е. как умудриться постепенно смещать проект давая юзерам работать с уже переделанными частями и получая возможность отлавливать глюки по очереди для каждой формы, а не утонуть потом сразу получив их ото всюду.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801358
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Насчет дебагера QA ругается
авторThe debugger interface is not installed. Please re-run setup, select 'add components to your existing installation' and make sure you select 'Development tools' \ 'Debugger Interface'
Что-то я не помню такой фишки на диске, щас гляну.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801545
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторТеперь как нам перелить свежие данные в таблицы на сервере?

дак используя dts , в котором нада составить скрипт (графически + текстовый, довольнотаки удобно, нада приноровиться )
которым сначала будеш сливать данные для пробы, отладки.
как только клиент будет готов - окончательно сливаешь данные и все.

ну а сам процесс перехода - это пестня особая
нада попытаться некоторых (самых терпеливых, заинтересованных) юзеров вести параллельно и мдб и адр .
будешь отлавливать ошибки и проверять логику и все прочее по контрольным цифрам. неправильная работа адр (искажение данных) не страшна , после исправления очередной ошибки спокойно сливаешь при помощи dts правильные данные и вперед.

перед сливанием необходимо очистить sql базу либо удалением всех записей ,либо созданиеем по новой всех даблиц из dts 9кому как нравтся)


постепенно смещать не получится...
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801717
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как DTS правильно воспользоваться не соображу никак?
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801732
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Описания полей базы Access не хотят переноситься в SQL, где копать?
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32801897
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нельзя перенести из Access в SQL:
- маски ввода
- условия на значения (некоторые)
- значения по умолчанию (некоторые)
- allow zero length
- индексы и межтабличные связи
:(
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802002
Фотография ДАВИД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, хотя может и не по теме.
Ас"97 Программа на N пользователей с разделением уровня доступа по данным и правам). mdb-клиента (50Mb) + mdb-данные(200Mb), 2-процессорный сервер по 3,2Mg+1Gb Оп+скази зеркало. WIN2003server.
Ставлю mdb-данные на сервер + N копий mdb-клиента (N- кол-во пользователей). На клиентских ПК - терминал.
Все летает, порхает и проблем пока (тьфу,тьфу) нет.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802197
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторmdb-клиента (50Mb)

ты уверен, что у тебя клиент в хорошем состоянии?

автор- индексы и межтабличные связи

связи переносятся, индексы желательно переосмыслить...
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802216
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторКак DTS правильно воспользоваться не соображу никак?

в EM есть пункт Data Trans.... Servis

вот там и копаешь.....

к сожалению так объяснить не смогу....,
но учитывая, что сам дошел, думаю, что и ты сможешь, главное не пугаться ...
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802328
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, еще пара соображений.

DTSом я пользовался, пока Linked Server не наладил. После этого все процедуры перемещения (откачки и закачки) данных можно писать на нормальном sql.

Можно как сделать связанные c сервером таблицы в MDB базе так и наборот подлинковать MDB таблицы к sql серверу.

Правда, оговорюсь, что внешний источник у меня специфический - фирменная база данных на майнфрейме AS/400. Причем только на чтение.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802451
Фотография ДАВИД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя авторmdb-клиента (50Mb)

ты уверен, что у тебя клиент в хорошем состоянии?



Уверен! Это он после сжатия такой худенький.
Ну так форм, отчетов, запросов - немерено. (...ну и мусор иногда попадается...наверное).
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802464
SRG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SRG
Гость
авторУверен! Это он после сжатия такой худенький.
А после /decompile ?
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802488
Фотография Shurgenz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PantaloneА получится ли так в конце залить все рабочие данные чтобы не возникло вопросов с ключами, нулевыми полями и прочим?
Почему кстати лучше делать это через DTS, а не через визарды Access 2002?
Пока разбираюсь с вопросом переноса базы, читал в поиске что DTS не очень корректро переносит данные.
В любом случае без скурпулезной проверки всех параметров таблицы от значений по умолчанию, до соответствию типов полей исходням таблицам не обойтись.
Теперь по переработке форм. Придется проверять каждый элемент на форме на наличие кода. Я уже имел опыт переноски приложения написанного на VB на ADP платформу. Получилось так что некоторый код был упущен, слишком уж утомительно каждый элемент проверять, все не упомнишь.

Не знаю. зачем Вам для переноса mdb на adp DTS нужны.... они, пакеты, немного не для этого заточены. Обычный Upsizing Wizard вполне справляется... до некоторых пределов, естественно, не все конструкции jet перенесутся. Придется весьма и весьма поработать, проверяя не только таблицы, но и запросы. И лучше все запросы переписать. Ну, я бы так сделал. SQL все же по синтаксису и возможностям отличается.
...
Рейтинг: 0 / 0
Переход от MDB к ADP
    #32802572
Pantalone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shurgenz Не знаю. зачем Вам для переноса mdb на adp DTS нужны.... они, пакеты, немного не для этого заточены. Обычный Upsizing Wizard вполне справляется...
А как потом после переписания базы данные залить из старой mdb?
Думаю что надо лить в уже готовые откорректированные пустые макеты таблиц, но чем лить и как убедиться что все залито корректно, без пропусков записей или значений полей?
...
Рейтинг: 0 / 0
25 сообщений из 62, страница 2 из 3
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переход от MDB к ADP
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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