Реферат: Перенос приложений MIDAS с одной СУБД на другую
into @doc_id, @from_id, @to_id
while @@fetch_status = 0
begin
select @from_name = '', @to_name = ''
exec client_full_name @from_id, @from_name output
exec client_full_name @to_id, @to_name output
--заполняем поля, которых нет в основной таблице
update pDoc_List
set from_name = @from_name,
to_name = @to_name
where SPID = @@spid
and doc_id = @doc_id
fetch next from list_docs
into @doc_id, @from_id, @to_id
end
close list_docs
deallocate list_docs
go
SQL-запрос, исполняемый на сервере приложений для передачи данных клиенту:
exec list_doc @from_date = :from_date, @to_date = :to_date select * from pDoc_List where SPID = @@spid | ||
ПРИМЕЧАНИЕ При написании ХП следует обратить особое внимание на одновременную работу нескольких пользователей. Необходимо минимизировать влияние "тяжелых" (отчетных) процедур на работу клиентов (один из вариантов был показан выше). |
Триггеры
Тут ничего сложного нет, необходимо только помнить, что триггеры в MSSQL запускаются только после действия (есть еще вместо (instead of), но это только в MSSQL2000).
Пример: предотвращение удаления клиента, если существуют документы с его участием (чтобы такой триггер не конфликтовал с ограничением ссылочной целостности, в MSSQL необходимо убрать foreign key с таблицы doc_title на client)
create trigger CLIENT_BEFORE_DELETE for CLIENT before delete as К-во Просмотров: 375
Бесплатно скачать Реферат: Перенос приложений MIDAS с одной СУБД на другую
|