Автор работы: Пользователь скрыл имя, 23 Марта 2011 в 18:23, курсовая работа
Интернет-провайдер, иногда просто Провайдер, (англ. Internet Service Provider, ISP, букв. "поставщик Интернет-услуги") — организация, предоставляющая услуги доступа к Интернету и иные связанные с Интернетом услуги.
Пользователь - лицо заключившее договор с провайдером на предоставление каких либо услуг.
Пользователь может заключить только один договор. Срок действия договора год, по истечении срока автоматически продляется.
1 Анализ предметной области 2
1.1 Деловой регламент 2
1.2 Функциональная структура 4
1.3 Диаграмма потоков данных 4
1.4 Выделение информационных объектов и их атрибутов 8
2 Концептуальная модель 10
3 Логическое моделирование 12
3.1 Построение логической модели 12
3.3 Целостность данных 13
3.3.1 Целостность объекта 13
3.3.2 Целостность приложения 14
3.3.3 Ссылочная целостность 14
4 Выбор СУБД 16
5 Физическая модель 18
5.1 Нормализация……………………………………………………..18
6 Проектирование и реализация информационной системы 21
6.1 Описание средств, использованных при реализации 21
6.2 Тексты SQL-запросов и результаты их выполнения 21
6.3 Клиентская часть 30
7 Заключение 38
8 Список литературы 39
9 Приложения 40
Приложение A Макетные данные 40
Приложение B Код клиентской части 46
При создании таблиц был использован 1-й вариант, как наиболее удобный из всех предлагаемых. Сначала создаётся каркас таблицы, отмечаются ключевые поля, устанавливаются типы данных для каждого поля, а уже потом таблицы заполняются макетными данными (приведены в приложении A).
После того, как таблицы созданы, необходимо их связать по ключевым полям.
Уже
на данном этапе можно сформулировать
достаточно большое количество запросов,
которые понадобятся в
При создании запросов в СУБД Oracle 10g был использован режим SQL . Это объясняется удобством и простотой языка SQL, который представляет достаточно богатый набор средств для формирования запросов.
Ниже приведены все SQL-запросы, использованные в процессе создания информационной системы.
SELECT *
FROM DOGOVOR
WHERE NOMER = (SELECT MAX(NOMER)
FROM
DOGOVOR)
NOMER | DATE2 | DATE3 | INN | ID_U | MONEY | PASS | STATUS |
npi013 | 17.12.2010 | 17.12.2011 | 7,77778E+11 | 13 | 0 | 5656 | 1 |
SELECT *
FROM USLUGI
WHERE type_us = 'tarif'
ORDER BY
STOIMOST
SHIFR | NAME1 | STOIMOST | TYPE_US |
1 | Bezlimit 256 | 350 | tarif |
2 | Bezlimit 512 | 500 | tarif |
3 | Bezlimit 768 | 600 | tarif |
4 | Bezlimit 1024 | 700 | tarif |
5 | Bezlimit 2048 | 1200 | tarif |
6 | Bezlimit 10000 | 10000 | tarif |
SELECT *
FROM OPLATA
WHERE ID_D = 'npi001'
ID_KARTI | DATA_VREMYA | SUMMA | ID_D |
403827 | 09.12.2010 12:56:58 | 500 | npi001 |
356813 | 14.12.2010 22:02:02 | 100 | npi001 |
81533 | 16.12.2010 1:02:59 | 100 | npi001 |
3 | 03.12.2010 15:48:00 | 100 | npi001 |
4 | 04.12.2010 5:02:00 | 100 | npi001 |
36 | 04.12.2010 5:03:00 | 200 | npi001 |
1 | 03.12.2010 15:47:00 | 500 | npi001 |
2 | 03.12.2010 15:47:00 | 200 | npi001 |
SELECT *
FROM KARTA
WHERE NOMER = '1' AND PASSWORD_K = '1'
NOMER | SUMMA | SOSTOYANIE | PASSWORD_K | INN |
1 | 500 | 1 | 1 | 7777777777 |
UPDATE KARTA
SET SOSTOYANIE = 1
WHERE NOMER = ‘nomer’
AND PASSWORD_K = 'password'
SELECT *
FROM DOGOVOR
WHERE NOMER = 'npi001'
NOMER | DATE2 | DATE3 | INN | ID_U | MONEY | PASS | STATUS |
npi001 | 01.11.2010 | 30.04.2013 | 777777777777 | 1 | 1100 | npi001 | 1 |
UPDATE DOGOVOR
SET MONEY = '100'
WHERE NOMER = 'npi001'
INSERT INTO USERI VALUES(14,2345,'Ф.
И. О.','Бомж','1234567')
SELECT NOMER
FROM DOGOVOR
ORDER BY NOMER
npi001 |
npi002 |
npi003 |
npi004 |
npi005 |
npi006 |
npi007 |
npi008 |
npi009 |
npi010 |
npi011 |
npi012 |
npi013 |
SELECT *
FROM USERI,DOGOVOR
WHERE USERI.ID = DOGOVOR.ID_U AND
DOGOVOR.NOMER = 'npi001’
TELEPHONE | NOMER | DATE2 | DATE3 | INN | ID_U | MONEY | PASS | ST |
89518477875 | npi001 | 01.11.2010 | 30.04.2013 | 77777777 | 1 | 04.01.1903 | npi001 | 1 |
NAME1 | NUMBER |
Bezlimit 1024 | 2 |
Bezlimit 2048 | 2 |
Bezlimit 256 | 3 |
Bezlimit 768 | 3 |
Bezlimit 512 | 3 |
limit | 13 |
SELECT SHIFR, NAME1
FROM USLUGI d1
WHERE NOT EXISTS (
SELECT USLUGI.SHIFR
FROM USLUGA_DOGOVOR, USLUGI
WHERE d1.SHIFR = USLUGA_DOGOVOR.SHIFR)
SHIFR | NAME1 |
06.01.1900 | Bezlimit 10000 |
SELECT SUM(MONEY) AS "Profit"
FROM DEBIT
WHERE TO_CHAR(TIME1, 'mm.yyyy') = TO_CHAR(sysdate, 'mm.yyyy')
Результат запроса: 1260.
SELECT TIME1, WITH_ADRESS, WITH_PORT, BAIT, ip.nomer
FROM IP
WHERE BAIT = (SELECT MAX(BAIT)
FROM IP
WHERE
IP.WITH_INTERFASE = 5)
TIME1 | WITH_ADRESS | WITH_PORT | BAIT | NOMER |
21-NOV-10 10.56.00 | 188.134.7.73 | 30128 | 95655656 | npi007 |
SELECT d1.NOMER, d1.money, d4.name1, d1.DATE2, d1.DATE3, d2.fio,
d2.pasport, d2.registration, d2.telephone
FROM DOGOVOR d1, USERI d2 , USLUGA_DOGOVOR d3, USLUGI d4
WHERE (d1.id_u = d2.id) AND d3.nomer = d1.nomer
AND
d4.shifr = d3.shifr AND d4.type_us = 'tarif'
NOMER | MO | NAME1 | DATE2 | DATE3 | FIO | PASPOR | REGISTRATI | TELEPHONE |
npi013 | 0 | Bezlimit 512 | 17.12.2010 | 17.12.2011 | sdg | 235456 | dhdfe4 | 3245 |
npi001 | 1100 | Bezlimit 256 | 01.11.2010 | 30.04.2013 | Ivanov Ivan Ivanovich | 705631 | Troickaya 9 | 89518477875 |
npi002 | 0 | Bezlimit 256 | 23.11.2010 | 23.11.2012 | Zlatous Eduard Petrovich | 7056316 | Troickaya 88 | 89518477872 |
npi003 | 0 | Bezlimit 512 | 23.11.2010 | 28.07.2012 | Veri Big Evil | 70563162 | Troickaya 77 | 89518477873 |
npi004 | 0 | Bezlimit 768 | 23.11.2010 | 17.02.2012 | Sv Lol | 70563163 | Troickaya 12 | 89518477877 |
npi005 | 0 | Bezlimit 1024 | 02.11.2010 | 22.10.2011 | Buga ga ga | 70563164 | Troickaya 33 | 89518477877 |
npi006 | 0 | Bezlimit 2048 | 25.11.2010 | 28.07.2012 | F I O | 70563165 | Engelsa 88 | 89518477875 |
npi007 | 0 | Bezlimit 768 | 11.11.2010 | 28.07.2012 | Adolf Gitler | 70563166 | AD 666/2 | 89518477871 |
npi008 | 0 | Bezlimit 1024 | 09.11.2010 | 28.07.2012 | Ktylxy | 70563167 | Engelsa 66 | 89518477879 |
npi009 | 0 | Bezlimit 512 | 04.11.2010 | 28.07.2012 | Chikotilo | 70563167 | AD 666/1 | 89518477810 |
npi010 | 0 | Bezlimit 2048 | 16.11.2010 | 28.07.2012 | Vladimir Vladimirovich Purin | 70563321 | Rai 777 | 89518477812 |
npi011 | 0 | Bezlimit 256 | 06.12.2010 | 06.12.2011 | Spanch Bob | 123123 | Dno Okeana | 1234578 |
npi012 | 0 | Bezlimit 768 | 06.12.2010 | 06.12.2011 | sdjfhgsdf | 123112 | sfsdfsdf | 1231231 |