Смекни!
smekni.com

Информационная система Data-центр (стр. 2 из 4)

Объектная модель ADO состоит из следующих объектов высокого уровня и семейств объектов:

Connection (представляет подключение к удалённому источнику данных)

Recordset (представляет набор строк, полученный от источника данных)

Command (используется для выполнения команд и SQL-запросов с параметрами)

Record (может представлять одну запись объекта Recordset или же иерархическую структуру, состоящую из текстовых данных)

Stream (используется для чтения и записи потоковых данных, например, документов XML или двоичных объектов)

Errors (представляет ошибки)

Fields (представляет столбцы таблицы базы данных)

Parameters (представляет набор параметров SQL-инструкции)

Properties (представляет набор свойств объекта)

1.2.4. Выбор технических средств

Основанная база хранится на сервере, клиентские приложения хранятся на ПК в сети, доступ к базе осуществляется посредством локальной сети:

Рисунок 1.1 Архитектура локальной сети для клиент-серверных приложений

2. ТЕХНИЧЕСКИЙ ПРОЕКТ

2.1 Разработка структурированного приложения

Схема 2.1 Дерево модулей и форм.

2.2 Определение структуры входных и выходных данных

2.2.1 Структура таблиц

Таблица 2.1 TB_DOGOVOR

Имя поля Пояснение Тип данных Ключ поля
ID_DOGOVOR Код договора Int Первичный
ID_KLIENT Код клиента Int Внешний
ID_MASHIN Код конфигурации Int Внешний
Date_zakl Дата заключения DateTime
Date_okonch Дата окончания DateTime
Stoimost Общая стоимостьтоимость DateTime

Таблица 2.2 TB_MASHIN

Имя поля Пояснение Тип данных Ключ поля
ID_MASHIN Код конфигурации Int Первичный
ID_PROC Код процессора Int Внешний
ID_HDD Код конфигурации Int Внешний
ID_MEM Код оперативной памяти Int Внешний
ID_SPEED Код скорости подключения Int Внешний
NAIM Название конфигурации nchar
CENA Цена аренды в месяц Real

Таблица 2.3 TB_HDD

Имя поля Пояснение Тип данных Ключ поля
ID_HDD Код жесткого диска Int Первичный
NAIM Наименование nchar
HARACT Характеристики nchar

Таблица 2.4 TB_KLIENTS

Имя поля Пояснение Тип данных Ключ поля
ID_KLIENT Код клиента Int Первичный
NAIM ФИО nchar
HARACT Контактные данные nchar

Таблица 2.5 TB_MEM

Имя поля Пояснение Тип данных Ключ поля
ID_MEM Код памяти Int Первичный
NAIM Наименование nchar
HARACT Характеристики nchar

Таблица 2.6 TB_PROC

Имя поля Пояснение Тип данных Ключ поля
ID_PROC Код процессора Int Первичный
NAIM Наименование nchar
HARACT Характеристики nchar

Таблица 2.4 TB_SPEED

Имя поля Пояснение Тип данных Ключ поля
ID_SPEED Код скорости Int Первичный
NAIM Наименование nchar
HARACT Характеристики nchar

2.2.2 Схема данных

Схема 2.2 Структура таблиц

2.3 Определение формы представления входных и выходных данных

2.3.1 Формы

Рисунок 2.2 Главная форма


Рисунок 2.3 Форма запросов, таблиц и представлений.

Рисунок 2.4 Форма справочников

Рисунок 2.5 Форма добавления элементов в таблицы.


Рисунок 2.5 Data Module

3. РАБОЧИЙ ПРОЕКТ

3.1 Текст программы

3.1.1 Сценарий в Microsoft SQL Server

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TB_SPEED]') AND type in (N'U'))

BEGIN

CREATE TABLE [dbo].[TB_SPEED](

[ID_SPEED] [int] IDENTITY(1,1) NOT NULL,

[NAIM] [nchar](10) NULL,

[HARACT] [nchar](10) NULL,

CONSTRAINT [PK_TB_SPEED] PRIMARY KEY CLUSTERED

(

[ID_SPEED] ASC

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

) ON [PRIMARY]

END

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TB_KLIENTS]') AND type in (N'U'))

BEGIN

CREATE TABLE [dbo].[TB_KLIENTS](

[ID_KLIENT] [int] IDENTITY(1,1) NOT NULL,

[NAIM] [nchar](25) NULL,

[HARACT] [nchar](50) NULL,

CONSTRAINT [PK_TB_KLIENTS] PRIMARY KEY CLUSTERED

(

[ID_KLIENT] ASC

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

) ON [PRIMARY]

END

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TB_PROC]') AND type in (N'U'))

BEGIN

CREATE TABLE [dbo].[TB_PROC](

[ID_PROC] [int] IDENTITY(1,1) NOT NULL,

[NAIM] [nchar](10) NULL,

[HARACT] [nchar](10) NULL,

CONSTRAINT [PK_TB_PROC] PRIMARY KEY CLUSTERED

(

[ID_PROC] ASC

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

) ON [PRIMARY]

END

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TB_MEM]') AND type in (N'U'))

BEGIN

CREATE TABLE [dbo].[TB_MEM](

[ID_MEM] [int] IDENTITY(1,1) NOT NULL,

[NAIM] [nchar](10) NULL,

[HARACT] [nchar](10) NULL,

CONSTRAINT [PK_TB_MEM] PRIMARY KEY CLUSTERED

(

[ID_MEM] ASC

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

) ON [PRIMARY]

END

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TB_HDD]') AND type in (N'U'))

BEGIN

CREATE TABLE [dbo].[TB_HDD](

[ID_HDD] [int] IDENTITY(1,1) NOT NULL,

[NAIM] [nchar](10) NULL,

[HARACT] [nchar](10) NULL,

CONSTRAINT [PK_TB_HDD] PRIMARY KEY CLUSTERED

(

[ID_HDD] ASC

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

) ON [PRIMARY]

END

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TB_MASHIN]') AND type in (N'U'))

BEGIN

CREATE TABLE [dbo].[TB_MASHIN](

[ID_MASHIN] [int] IDENTITY(1,1) NOT NULL,

[ID_PROC] [int] NULL,

[ID_HDD] [int] NULL,

[ID_MEM] [int] NULL,

[ID_SPEED] [int] NULL,

[NAIM] [nchar](10) NULL,

[CENA] [real] NULL,

CONSTRAINT [PK_TB_MASHIN] PRIMARY KEY CLUSTERED

(

[ID_MASHIN] ASC

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

) ON [PRIMARY]

END

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TB_DOGOVOR]') AND type in (N'U'))

BEGIN

CREATE TABLE [dbo].[TB_DOGOVOR](

[ID_DOGOVOR] [int] IDENTITY(1,1) NOT NULL,

[ID_KLIENT] [int] NULL,

[ID_MASHIN] [int] NULL,

[Date_zakl] [datetime] NULL,

[Date_okonch] [datetime] NULL,

[Stoimost] [real] NULL,

CONSTRAINT [PK_TB_DOGOVOR] PRIMARY KEY CLUSTERED

(

[ID_DOGOVOR] ASC

)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]

) ON [PRIMARY]

END

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

IF NOT EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[PR_MASHIN]'))

EXEC dbo.sp_executesql @statement = N'CREATE VIEW [dbo].[PR_MASHIN]

AS

SELECT dbo.TB_MASHIN.NAIM AS NAIM_MASH, dbo.TB_MEM.NAIM AS NAIM_MEM, dbo.TB_SPEED.NAIM AS NAIM_SPEED, dbo.TB_PROC.NAIM AS NAIM_PROC,

dbo.TB_HDD.NAIM AS NAIM_HDD, dbo.TB_MASHIN.CENA

FROM dbo.TB_MASHIN INNER JOIN

dbo.TB_MEM ON dbo.TB_MASHIN.ID_MEM = dbo.TB_MEM.ID_MEM INNER JOIN

dbo.TB_PROC ON dbo.TB_MASHIN.ID_PROC = dbo.TB_PROC.ID_PROC INNER JOIN

dbo.TB_SPEED ON dbo.TB_MASHIN.ID_SPEED = dbo.TB_SPEED.ID_SPEED INNER JOIN

dbo.TB_HDD ON dbo.TB_MASHIN.ID_HDD = dbo.TB_HDD.ID_HDD

'

GO

EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]

Begin DesignProperties =

Begin PaneConfigurations =

Begin PaneConfiguration = 0

NumPanes = 4

Configuration = "(H (1[40] 4[20] 2[20] 3))"

End

Begin PaneConfiguration = 1

NumPanes = 3

Configuration = "(H (1 [50] 4 [25] 3))"

End

Begin PaneConfiguration = 2

NumPanes = 3

Configuration = "(H (1 [50] 2 [25] 3))"

End

Begin PaneConfiguration = 3

NumPanes = 3

Configuration = "(H (4 [30] 2 [40] 3))"

End

Begin PaneConfiguration = 4

NumPanes = 2

Configuration = "(H (1 [56] 3))"

End

Begin PaneConfiguration = 5

NumPanes = 2

Configuration = "(H (2 [66] 3))"

End

Begin PaneConfiguration = 6

NumPanes = 2

Configuration = "(H (4 [50] 3))"

End

Begin PaneConfiguration = 7

NumPanes = 1

Configuration = "(V (3))"

End

Begin PaneConfiguration = 8

NumPanes = 3

Configuration = "(H (1[56] 4[18] 2))"

End

Begin PaneConfiguration = 9

NumPanes = 2

Configuration = "(H (1 [75] 4))"

End

Begin PaneConfiguration = 10

NumPanes = 2

Configuration = "(H (1[66] 2))"

End

Begin PaneConfiguration = 11

NumPanes = 2

Configuration = "(H (4 [60] 2))"

End

Begin PaneConfiguration = 12

NumPanes = 1

Configuration = "(H (1))"

End

Begin PaneConfiguration = 13

NumPanes = 1

Configuration = "(V (4))"

End

Begin PaneConfiguration = 14

NumPanes = 1

Configuration = "(V (2))"

End

ActivePaneConfig = 0

End

Begin DiagramPane =

Begin Origin =

Top = 0

Left = 0

End

Begin Tables =

Begin Table = "TB_MEM"

Begin Extent =

Top = 6

Left = 245

Bottom = 108

Right = 414

End

DisplayFlags = 280

TopColumn = 0

End

Begin Table = "TB_PROC"

Begin Extent =

Top = 6

Left = 452

Bottom = 108

Right = 621

End

DisplayFlags = 280

TopColumn = 0

End

Begin Table = "TB_SPEED"

Begin Extent =

Top = 108

Left = 245

Bottom = 210

Right = 414

End

DisplayFlags = 280

TopColumn = 0

End

Begin Table = "TB_HDD"

Begin Extent =

Top = 108

Left = 452

Bottom = 210

Right = 621

End

DisplayFlags = 280

TopColumn = 0

End

Begin Table = "TB_MASHIN"

Begin Extent =

Top = 6