Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Проектирование базы данных

 

Для реализации поставленной задачи необходимо создать таблицы:

· «Трубопроводы»,

· «Участки трубопроводов»,

· «Примечание»,

· «Обследование с целью продления срока службы»,

· «Ремонт на участках»,

· «Ревизия участков трубопроводов»,

· «Диагностика участков трубопроводов»,

· «Испытание участков трубопроводов»,

· «Отказы на участках».

«Трубопроводы». В этой таблице хранятся основные данные.

- «Вид». Значение этого атрибута является вид трубопровода. Вид трубопровода выбирается пользователем из справочника «Виды трубопровода».

- «Наименование трубопровода». Значением этого атрибута является название трубопровода, задаваемое пользователем.

- «Наименование начала линии(трубы)». Значением этого атрибута является название начала линии, задаваемой пользователем.

- «№ точки подключения». Значением этого атрибута является номер точки подключения, задаваемой пользователем.

- «Наименование конца линии(трубы)». Значением этого атрибута является название конца линии, задаваемой пользователем.

- «Количество отказов». Значением этого атрибута является числовое значение, соответствующее количеству отказов трубопровода.

- «Категория трубопровода». Значением этого атрибута является категория трубопровода, выбираемая пользователем из справочника «Категория трубопровода».

- «Транспортируемый продукт». Значением этого атрибута является транспортируемый продукт, выбираемый пользователем из справочника «Транспортируемые продукты».

- «Регистрационный № ФСТН». Значением этого атрибута является номер регистрации в ФСТН, который выдается при регистрации объекта.

- «Дата регистрации в ФСТН». Значением этого атрибута является дата регистрации в ФСТН.

- «Регистрационный № СТН(ОТН)». Значением этого атрибута является номер регистрации в СТН, который выдается при регистрации объекта.

- «Дата регистрации в СТН(ОТН)». Значением этого атрибута является дата регистрации в СТН.

- «Регистрационный № СПК». Значением этого атрибута является номер регистрации в СТН, который выдается при регистрации объекта

- «Дата регистрации в СПК». Значением этого атрибута является дата регистрации в СПК.

- «Дата снятия с регистрации в ФСТН». Значением этого атрибута является дата снятия с регистрации в ФСТН.

- «Дата снятия с регистрации в СТН(ОТН)». Значением этого атрибута является дата снятия с регистрации в СТН.

- «Дата снятия с регистрации в СПК». Значением этого атрибута является дата снятия регистрации в СПК.

- «Организация местоположения». Значением этого атрибута является полный список организаций, которым принадлежит трубопровод.

- «Месторождение». Значением этого атрибута является наименования месторождение, выбираемое пользователем из справочника «Месторождения».

- «Место установки». Значением этого атрибута является наименование предприятия, где установлен трубопровод.

- «Отношение к ОПО». Значением этого атрибута является наименование опасных промышленных объектов, который выбирается пользователем.

- «Владелец». Значением этого атрибута является наименование владельца предприятия которому принадлежит трубопровод.

- «Дополнительная информация». Значением этого атрибута является дополнительные сведения о трубопроводе, вводимые пользователем.

«Участки трубопроводов». В этой таблице хранятся данные, которые содержат информацию об участках трубопроводов.

- «Трубопровод». Значением этого атрибута является указатель на трубопровод к которому принадлежит примечание.

- «Наименование участка». Значением этого атрибута является название участка трубопровода, задаваемое пользователем.

- «Дата врезки». Значением этого атрибута является дата, когда была осуществлена врезка трубопровода.

- «Протяженность (м)». Значением этого атрибута является протяженность участка трубопровода.

- «Марка стали, ГОСТ или ТУ». Значением этого атрибута является марка стали из которой сделан трубопровод.

- «Наружный диаметр (мм)». Значением этого атрибута является наружный диаметр трубопровода.

- «Рабочее давление, кгс/кв.см(Мпа)». Значением этого атрибута является рабочее давление трубопровода.

- «Рабочая температура стенки, град. С». Значениме этого атрибута является рабочая температура стенки участка трубопровода.

- «Тип изоляции». Значением этого атрибута является тип изоляции, выбираемый пользователем из справочника «Тип изоляции».

- «Тип попутного обогрева». Значением этого атрибута является тип попутного обогрева, выбираемый пользователем из справочника «Тип попутного обогрева».

- «Марка ингибитора». Значением этого атрибута является марка ингибитора, выбираемая пользователем из справочника «Марка ингибитора».

- «Номинальная толщина (мм)». Значением этого атрибута является номинальная толщина участка трубопровода.

- «Фактическая толщина стенок (мм)». Значением этого атрибута является фактическая толщина стенок, которая вычисляется при проведении экспертизы.

- «Скорость коррозии, мм/год». Значением этого атрибута является скорость коррозии трубопровода.

- «Номер проекта». Значением этого атрибута является номер проекта.

- «Наименование проектной организации». Значением этого атрибута является наименование проектной организации, которая выбирается пользователем из справочника «Проектные организации»

- «Наименование строительно-монтажной организации». Значением этого атрибута является наименование строительно-монтажной организации, которая выбирается пользователем из справочника «Строительно-монтажные организации».

- «Дата окончания строительства». Значением этого атрибута является дата окончания строительства участка трубопровода.

- «Дата ввода в эксплуатацию». Значением этого атрибута является дата ввода в эксплуатацию участка трубопровода.

- «Дата окончания службы». Значением этого атрибута является дата окончания срока службы участка трубопровода.

- «Выявленные отклонения от технических параметров». Значением этого атрибута является выявленные отклонения от технических параметров в ходе эксплуатации.

- «Дата вывода из эксплуатации». Значением этого атрибута является дата вывода участка трубопровода из эксплуатации.

- «Причина вывода из эксплуатации». Значением этого атрибута является информации содержащая причины вывода участка трубопровода из эксплуатации.

«Примечание». В этой таблице хранятся данные, которые могут понадобиться для правильного и быстрого анализа ситуации.

- «Трубопровод». Значением этого атрибута является указатель на трубопровод к которому принадлежит примечание.

- «Дата примечания». Значением данного атрибута является дата, когда примечание было добавлено.

- «Примечание». Значением этого атрибута является дополнительные сведения о трубопроводе, вводимые пользователем.

«Обследование с целью продления срока службы». В этой таблице хранятся данные, содержащие информацию об обследовании проводившегося с целью продления срока службы трубопровода.

- «Трубопровод». Значением этого атрибута является указатель на трубопровод к которому принадлежит обследование.

- «Дата обследования с целью продления службы». Значением этого атрибута является дата проведения обследование для продления срока службы трубопровода.

- «Наименование организации, проводившей обследование». Значением этого атрибута является наименование организации проводившей обследование.

- «Ф.И.О. эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводил обследование трубопровода.

- «Выявленные отклонения от технических параметров». Значением этого атрибута является выявленные экспертом отклонения от нормы.

- «Дата завершения эксплуатации». Значением этого атрибута является дата завершения эксплуатации трубопровода.

- «Заключение». Значением этого атрибута является заключение составленное экспертом в результате обследования трубопровода.

- «Номер заключения». Значением этого атрибута является номер заключения.

- «Регистрационный номер заключения в ФСТН». Значением этого атрибута является номер заключения в ФСТН, которое регистрируется после обследования трубопровода и составления экспертом заключения.

«Ревизия участков». В этой таблице хранятся данные, содержащие всю информацию о проводившихся ревизиях на участке трубопровода.

- «Участок трубопровода». Значением этого атрибута является указатель на участок трубопровода к которому относится ревизия.

- «Дата обследования». Значением этого атрибута является дата проведения ревизии на участке трубопровода.

- «Наименование организации, проводившей обследование». Значением этого атрибута является наименование организации проводившей ревизию участка трубопровода.

- «Ф.И.О. эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводил ревизию участка трубопровода.

- «Дата следующего обследования». Значением этого атрибута является дата следующего проведения ревизии.

- «Периодичность». Значением этого атрибута является периодичность проведения ревизий на участке трубопровода.

- «Дата заключения». Значением этого атрибута является дата заключения, когда было сделано заключение на основе ревизии.

- «Номер заключения». Значением этого атрибута является номер заключения.

- «Заключение». Значением этого атрибута является заключение которое было сделано экспертом в ходе проведения ревизии.

«Испытания участков». В этой таблице хранятся данные, содержащие всю информацию о проводившихся испытаниях на участке трубопровода.

- «Участок трубопровода». Значением этого атрибута является указатель на участок трубопровода к которому относится испытание.

- «Дата обследования». Значением этого атрибута является дата проведения испытания на участке трубопровода.

- «Наименование организации, проводившей обследование». Значением этого атрибута является наименование организации проводившей испытание участка трубопровода.

- «Ф.И.О. эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводил испытание участка трубопровода.

- «Дата следующего обследования». Значением этого атрибута является дата следующего проведения испытания.

- «Периодичность». Значением этого атрибута является периодичность проведения испытаний на участке трубопровода.

- «Дата заключения». Значением этого атрибута является дата заключения, когда было сделано заключение на основе испытания.

- «Номер заключения». Значением этого атрибута является номер заключения.

- «Заключение». Значением этого атрибута является заключение которое было сделано экспертом в ходе проведения испытания.

«Диагностика участков». В этой таблице хранятся данные, содержащие всю информацию о проводившихся диагностиках на участке трубопровода.

- «Участок трубопровода». Значением этого атрибута является указатель на участок трубопровода к которому относится диагностика.

- «Дата обследования». Значением этого атрибута является дата проведения диагностики на участке трубопровода.

- «Наименование организации, проводившей обследование». Значением этого атрибута является наименование организации проводившей диагностику участка трубопровода.

- «Ф.И.О. эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводил диагностику участка трубопровода.

- «Дата следующего обследования». Значением этого атрибута является дата следующего проведения диагностики.

- «Периодичность». Значением этого атрибута является периодичность проведения диагностик на участке трубопровода.

- «Дата заключения». Значением этого атрибута является дата заключения, когда было сделано заключение на основе диагностики.

- «Номер заключения». Значением этого атрибута является номер заключения.

- «Заключение». Значением этого атрибута является заключение которое было сделано экспертом в ходе проведения диагностики.

«Ремонт участков». В этой таблице хранятся данные, содержащие всю информацию о проводившихся ремонтах на участке трубопровода.

- «Участок трубопровода». Значением этого атрибута является указатель на участок трубопровода к которому относится ремонт.

- «Дата поломки». Значением этого атрибута является дата поломки участка трубопровода.

- «Дата начала ремонта». Значением этого атрибута является дата начала ремонта участка трубопровода.

- «Заключение о поломке». Значением этого атрибута является заключение о поломке участка трубопровода.

- «Дата конца ремонта». Значением этого атрибута является дата окончания ремонта участка трубопровода.

- «Выполненные работы». Значением этого атрибута является информация которая содержит перечень всех выполненных работ в ходе ремонта участка трубопровода.


Описанные сущности представлены на ER-диаграмме на рис. 1.

 

 


Рис. 1. ER – диаграмма.


Переход от ER-диаграммы к схеме базы данных осуществляется по следующим правилам:

· сущности преобразуются в таблицы,

· связи один ко многим преобразуются во внешние ключи,

· связи многие ко многим преобразуются в таблицы.

Полученная по этим правилам схема базы данных расположена на рисунке 2.


Рис. 2.

 

Хранимые процедуры

 

Хранимая процедура для удаления записи из таблицы «Трубопроводы»:

CREATE PROCEDURE spDelPipeline(@Id uniqueidentifier) AS

DELETE FROM CommentaryPipeline

WHERE Id_Pipeline = @id

DELETE FROM InspectionPipeline

WHERE Id_Pipeline = @id

Delete from RevisionPartsPipeline where

RevisionPartsPipeline.id_RevisionPartsPipeline in

(select RevisionPartsPipeline.id_RevisionPartsPipeline from

((Pipeline inner join PartsPipeline on Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

RevisionPartsPipeline on PartsPipeline.id_PartsPipeline = RevisionPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from TestPartsPipeline where

TestPartsPipeline.id_TestPartsPipeline in

(select TestPartsPipeline.id_TestPartsPipeline from

((Pipeline inner join PartsPipeline on Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

TestPartsPipeline on PartsPipeline.id_PartsPipeline = TestPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from RefusalPartsPipeline where

RefusalPartsPipeline.id_RefusalPartsPipeline in

(select RefusalPartsPipeline.id_RefusalPartsPipeline from

((Pipeline inner join PartsPipeline on Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

RefusalPartsPipeline on PartsPipeline.id_PartsPipeline = RefusalPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from DiagnosticPartsPipeline where

DiagnosticPartsPipeline.id_DiagnosticPartsPipeline in

(select DiagnosticPartsPipeline.id_DiagnosticPartsPipeline from

((Pipeline inner join PartsPipeline on Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

DiagnosticPartsPipeline on PartsPipeline.id_PartsPipeline = DiagnosticPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from RepairPartsPipeline where

RepairPartsPipeline.id_RepairPartsPipeline in

(select RepairPartsPipeline.id_RepairPartsPipeline from

((Pipeline inner join PartsPipeline on Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

RepairPartsPipeline on PartsPipeline.id_PartsPipeline = RepairPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

DELETE FROM PartsPipeline

WHERE Id_Pipeline=@id

DELETE FROM Pipeline

WHERE Id_Pipeline=@Id

GO

Хранимая процедура для удаления записи из таблицы «Транспортируемые продукты»:

CREATE PROCEDURE SPDelDic_ClassTransportProductTE(@idrec uniqueidentifier) AS

DECLARE @ins_error int, @ROWCOUNT int

BEGIN TRANSACTION TranName

DELETE FROM DIC_CLASSTRANSPORTPRODUCTTE

WHERE Id_Dic_ClassTransportProductTE = @idrec

select @ROWCOUNT=@@ROWCOUNT, @ins_error=@@error

if @ins_error=0

 begin

 COMMIT TRANSACTION TranName

 return (0)

 end

 else

 begin

 ROLLBACK TRAN TranName

 return (1)

 end

GO

 

Запросы

 

Запрос на добавления записи в таблицу «Трубопроводы»:

SQLStr.Add('INSERT INTO dbo.PartsPipeline (Id_PartsPipeline, Id_Pipeline, '+

'NameParts, NameProjectOrganizations, DateEndConstract, DatePutting, '+ 'DateEndServiceLife, DateLeavePutting, DepartureTehPar, '+ 'Id_Dic_ClassDBAOrganizationsTE, 'Id_Dic_ClassTypeIsolationTE, '+ Id_Dic_ClassTypeHeatingTE, Id_Dic_ClassTypeInhibitorTE, '+

'IncutDate, Length, StellGrade, OuterDiameter, WorkingPressure, WorkingTemperature, '+

'NominalThickness, ActualThickness, VelocityCorrosion, '+

'MotiveLeavePutting, NumberProject) '+

'VALUES ('''+ Id_PartsPipeLine +''', '+

     ''''+ Id_Pipeline +''', '+

     ''''+ memNameParts.text +''', '+

     ''''+ memNameProjectOrg.text +''','+

 ''+ DateTimeToStrDB(deDateEndConstract.Date,': ') +', '+

 ''+ DateTimeToStrDB(deDatePutting.Date,': ') +', '+

 ''+ DateTimeToStrDB(deDateEndServiceLife.Date,': ') +', '+

 ''+ DateTimeToStrDB(deDateLeavePutting.Date,': ') +', '+

 ''''+ memDepartureTehPar.text +''', '+

 Id_ClassDBAOrganizations +', '+

 Id_ClassTypeIsolation +', '+

 Id_ClassTypeHeating +', '+

 Id_ClassTypeInhibitor +', '+

 ''+ DateTimeToStrDB(deIncutDate.Date,': ') +', '+

 ''''+ edtLength.text +''', '+

 ''''+ edtStellGrade.text +''', '+

 ''''+ edtOuterDiameter.text +''', '+

 ''''+ edtWorkingPressure.text +''', '+

 ''''+ edtWorkingTemperature.text +''', '+

 ''''+ edtNominalThickness.text +''', '+

 ''''+ edtActualThickness.text +''', '+

 ''''+ edtVelocityCorrosion.text +''', '+

 ''''+ memMotiveLeavePutting.text +''', '+

 ''''+ edtNumberProject.text +''')');

Запрос на обновление записи примечания к трубопроводу в таблице «Примечания»:

MemberCommentary.Add('UPDATE dbo.CommentaryPipeline SET '+

'Commentary = '''+ Data.Commentary +''', '+

'DateCommentary = '+ ConvertFormatDate(Data.DateCommentary) +' '+

' WHERE Id_CommentaryPipeline = '''+ Data.Id_Commentary +''' ');

 

Выбор модели базы данных

 

Существую три дореляционных подхода к организации баз данных:

· системы, основанные на инвертированных списках,

· иерархические системы,

· сетевые системы.

Одними из современных подходов к организации баз данных являются объектно-ориентированный и реляционный.

Данные в рамках рассматриваемой предметной области сильно структурированы. В данной работе использована реляционная модель, поскольку она является наиболее эффективной для представления такого рода данных.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...