Главная Учебники - Разные Лекции (разные) - часть 32
|
МИНИСТЕРСТВО
ОБРАЗОВАНИЯ РФ Кабардино-Балкарский
Государственный Университет им. Бербекова
Х.М.
Выполнил: студент
Факультета Информатики и Управления
Проверил: Нальчик 2003г. Содержание. 1.
Введение. 2 База данных
и способы ее представление. 3.
Свойства
полей базы данных. 4.
Цели и
задачи. 5. Разработка системного
меню. 6.
Описание
программы. 6.1
Инструкция по использованию программы.
6.2
Описание процедур. 7.
Результаты. 8.
Вывод.
9.
Листинг
программы.
1.Введение. На сегодняшний день в мире работают сотни
миллионов персональных компьютеров. Ученые, экономисты, политики считают, что к началу
треть- го тысячелетия: -
количество компьютеров
в мире сровняется с числом жителей развитых стран. -
большинство этих
компьютеров будет включено в мировые информацион- ные сети. -
вся накопленная
человечеством к началу третьего тысячелетия информация будет переведена в компьютерную (двоичную) форму, а вся информация
будет готовиться при помощи (или при участии) компьютеров; вся информация
будет бессрочно храниться в компьютерных сетях; -
полноценный член
общества третьего тысячелетия должен будет каждоднев но взаимодействовать с локальными, региональными или мировыми
сетями с помощью компьютеров. При такой компьютеризации практически всех отраслей
жизнедеятельно сти человека возникает вопрос о создании программ позволяющих
создавать подобные базы данных. Поэтому и была разработана данная программа
,кото рая позволяет создать базу данных, хранящую в себе информацию об
успеваемости школьников.. База Данных (БД) - это информация,
представленная в виде двумерных таблиц. БД содержит множество строк, каждая из
которых соответствует объекту. Для каждого объекта используются определенные
независимые позиции, которые называются полями. Представим себе такую БД,
содержащую строки и столбцы (простейший случай). Каждая строка, называемая так
же записью, соответствует определенному объекту. Каждый столбец содержит
значения соответствующих данных об объекте. БД может состоять не из одной таблицы,
а из двух, трех и более. Дополнительную информацию об объекте можно хранить в
дополнительных таблицах. Одно из мощных средств БД состоит в
том, что информацию можно упорядочивать по тому критерию, который задает
пользователь. В Pascal БД предоставляется в виде списка термов вида:
имя_предиката_базы (поля_записи). Имена БД описываются в разделе . Доступ к
записям БД осуществляется с помощью предиката базы. pascal предоставляет довольно много средств по работе с такими БД:
загрузка, запись, добавление и т.д. База данных – это организованная структура,
предназначенная для хранения информации. В современных базах данных хранятся не только данные, но и
информация. Это утверждение
легко пояснить, если, например, рассмотреть базу данных крупного банка. В ней
есть все необходимые сведения о клиентах, об их адресах, кредитной истории,
состояние расчетных счетов, финансовых операциях и т.д. Доступ к этой базе
данных имеется у достаточно большого количества сотрудников банка, но среди них
вряд ли найдется такое лицо, которое имеет доступ ко всей базе полностью и при
этом способно единолично вносить в нее произвольные изменения. Кроме данных,
база содержит методы и средства, позволяющие каждому из сотрудников оперировать
только с теми данными, которые входят в его компетенцию. В результате
взаимодействия данных, содержащихся в базе, с методами, доступными конкретным
сотрудникам, образуется информация, которую они потребляют и на основании
которой в пределах собственной компетенции производят ввод и редактирование
данных. С понятием базы данных тесно связано понятие системы управления
базой данных. Это комплекс программных средств, предназначенных для
создания структуры новой базы, наполнение ее содержимым, редактирование
содержимого и визуализации информации. Под визуализацией информации базы
понимается отбор отображаемых данных в соответствии с заданным критерием, их
упорядочение, оформление и последующая выдача на устройства вывода или передачи
по каналам связи. В мире существует множество систем управления базами данных.
Несмотря на то что они могут по-разному работать с разными объектами и
предоставляют пользователю различные функции и средства, большинство СУБД
опираются на единый устоявшийся комплекс основных понятий. Это дает нам
возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на
весь класс СУБД. В качестве такого учебного объекта мы выберем СУБД Pascal 7.0, входящую в пакет Pascal 7.0. Поля базы данных не просто определяют структуру базы – они еще
определяют групповые свойства данных, записываемых в ячейки, принадлежащие
каждому из полей. Ниже перечислены основные свойства полей таблиц баз данных на
примере СУБД Pascal 7.0 .. q Имя поля – определяет, как следует
обращаться к данным этого поля при автоматических операциях с базой (по
умолчанию имена полей используются в качестве заголовков столбцов таблиц). q Тип поля – определяет тип данных, которые
могут содержаться в данном поле. q Размер поля – определяет предельную длину
(в символах) данных, которые могут размещаться в данном поле. q Формат поля – определяет способ
форматирования данных в ячейках, принадлежащих полю. q Маска ввода – определяет форму, в которой
вводятся данные а поле (средство автоматизации ввода данных). q Подпись – определяет заголовок столбца
таблицы для данного поля (если подпись не указана, то в качестве заголовка
столбца используется свойство Имя поля). q Значение по умолчанию – то значение,
которое вводится в ячейки поля автоматически (средство автоматизации ввода
данных). q Условие на значение – ограничение,
используемое для проверки правильности ввода данных (средство автоматизации
ввода, которое используется, как правило, для данных, имеющих числовой тип,
денежный тип или тип даты). q Сообщение об ошибке – текстовое сообщение,
которое выдается автоматически при попытке ввода в поле ошибочных данных. q Обязательное поле – свойство, определяющее
обязательность заполнения данного поля при наполнении базы. q Пустые строки – свойство, разрешающее ввод
пустых строковых данных (от свойства Обязательное поле отличается тем, что
относится не ко всем типам данных, а лишь к некоторым, например к текстовым). q Индексированное поле – если поле обладает
этим свойством, все операции, связанные с поиском или сортировкой записей по
значению, хранящемуся в данном поле, существенно ускоряются. Кроме того, для
индексированных полей можно сделать так, что значение в записях будут
проверяться по этому полю на наличие повторов, что позволяет автоматически
исключить дублирование данных. Поскольку в разных полях могут содержаться данные разного
типа, то и свойства у полей могут различаться в зависимости от типа данных.
Так, например, список вышеуказанных свойств полей относится в основном к полям
текстового типа. Поля других типов могут иметь или не иметь эти свойства, но могут
добавлять к ним и свои. Например, для данных, представляющих действительные
числа, важным свойством является количество знаков после десятичной запятой. С
другой стороны, для полей, используемых для хранения рисунков, звукозаписей,
видео клипов и других объектов OLE, большинство
вышеуказанных свойств не имеют смысла. 4.Цели и задачи. При создании этой программы стояли следующие цели: ·
Написать программу,
которая позволила бы обрабатывать, сортировать и изменять информацию о
автостоянки. Так же при создании этой
программы стояли следующие задачи: ·
Данная программа должна
иметь простой и удобный пользовательский интерфейс. ·
Данная программа должна
иметь малую ресурсоёмкость. Системное меню или основное меню должно обеспечивать удобное
взаимодействие пользователя с программой. В меню должны войти пункты
сохранения, просмотра, ввода новых данных и.т.д. Пользователю нужно всего лишь
нажать кнопку ‘enter’. В меню данной программы присутствует
шесть пунктов: 1 -Создание файла 2 -Добавления запеси 3 -Корректировка запеси 4 -Просмотр запеси из файла 5 -Удаление запеси 6 -Выход 1 - Создание
нового файла – Создается новый файл с именем задаваемым пoльзователем программы 2 - Просмотр
содержимого файла – на экран поочередно выдаются раннее созданные записи в
виде: Фамилия хозяина: Имя хозяина: марка машины: модель маштны: тип кузова: номер машины: регион: год выпуска: цвет: 3 –
Добавление записи – Создание новой записи и файле добавляя его в конец записи. 4 – Поиск по номеру палаты – Позволяет находить данные о отдыхающем
по номеру палаты , в котором зарегистрирован отдыхающий. 5 - Выход из
программы - выход из программы 6.Описание программы. 6.1Инструкция по использованию
программы. Для запуска этой программы необходимо
перейти на диск 3.5“A” прилагаемый к данной работе и войти в
директорию «KYRSOVAI». Создания базы данных. Для того чтобы создать базу данных пользователю необходимо
нажать пункт «СОЗДАНИЕ ФАЙЛА» в главном меню с помощью «ENTER».После этого появится следующая строка:
«ЗАДАЙТЕ ИМЯ ФАЙЛА КОТОРЫЙ БУДЕТ СОЗДОВАТЬСЯ». Далее через «ENTER» вводятся данные. Дополнение данных. Для дополнения данных необходимо
нажать кнопку «ENTER» . После этого появиться следующая строка: «ЗАДАЙТЕ ИМЯ ФАЙЛА В КОТОРЫЙ
БУДЕТ ДОБОВЛЯТЬСЯ ЗАПИСЬ» Выыход.
Возврощает в главную програму. 6.2
Описание
процедур. Creatfile-создание файла; Addrecord-добавление запеси; Inputfile-ввод данных; Redzap-корректировка; Openfile-просмотр; Clearfile-удаление.
Вывод. Проделанная работа позволяет
любому пользователю с легкостью создавать большие объемы информации,
обрабатывать их, сортировать, делать выборки по определенным критериям. Использование такой программы в
современном мире значительно облегчает деятельность человека. Program kursovay; uses Crt,Dos; type prokat=record
Sname_Hozaina,Name_Hozaina:string[15]; markauto:string[20]; model_auto:string[20]; tip_kyzova:string[20]; nomer_auto:string[20]; region:integer; god_vipyska:integer; color:string[20]; end; var f:file of prokat; zn,filename:string; k:integer; label 11;
{-----------------------------------------------------------} procedure Creatfile; begin writeln('Задайте имя файла,который будет создаваться'); readln(filename); assign(f,filename); rewrite(f); end;
{-----------------------------------------------------------} procedure Addrecord; var rez:integer; ch:char; begin while rez<>0 do begin writeln('Задайте имя
файла,в который будет добавляться запись'); readln(filename); assign(f,filename); reset(f); rez:=IOResult; if rez<>0 then begin writeln('Проверьте правильность имени
файла!'); writeln('Будет ли повторное задание
имени файла?(Y/N)'); readln(ch); if (ch='n') or (ch='N')
then halt (0); end; end; seek(f,filesize(f)); end;
{==========================================================} procedure Inputfile; var st:prokat; k:char; begin repeat writeln('Введите данные о новом клиенте : '); write('Фамилия Хозяина : '); readln(st.Sname_Hozaina); write('Имя Хозяина:' ); readln(st.Name_Hozaina); write('марка машины:'); readln(st.markauto); write('модель машины:'); readln(st.model_auto); write('тип кузова:'); readln(st.tip_kyzova); write('номер машины: '); readln(st.Nomer_auto); write('регион:'); readln(st.region); write('год выпуска: '); readln(st.God_vipyska); write('цвет: '); readln(st.color); write(f,st); write('Надо ли вводить данные о новом клиенте ?
(Y/N)>');readln(k); writeln; until(k='n') or (k='N'); close(f); end;
{=========================================================} procedure redzap; var st:prokat; filename,str:string; Sname_Hozaina2,Name_Hozaina2:string[15]; markauto2:string[20]; model_auto2:string[20]; tip_kyzova2:string[20]; nomer_auto2:string[20]; region2:integer; god_vipyska2:integer; color2:string[20]; x:integer; begin writeln('Задайте имя файла'); readln(filename); assign(f,filename); reset(f); with st do begin write('Введите фамилию
клиента: ');readln(str); x:=0; while not eof(f) do begin read(f,st); if st.Sname_Hozaina=str then begin writeln('Введите новые данные о клиенте: '); write('Фамилия хозяина: '); readln(st.Sname_Hozaina); write('Имя хозяина: '); readln(st.Name_Hozaina); write('марка машины:'); readln(st.markauto); write('модель машины:'); readln(st.model_auto); write('тип кузова:'); readln(st.tip_kyzova); write('номер машины:'); readln(st.nomer_auto); write('регион:'); readln(st.region); write('год выпуска:'); readln(st.god_vipyska); write('цвет: '); readln(st.color); Sname_Hozaina2:=Sname_Hozaina;
markauto2:=markauto;
Name_Hozaina2:=Name_Hozaina; color2:=color;
Nomer_auto2:=Nomer_auto; model_auto2:=model_auto;
God_vipyska2:=God_vipyska; tip_kyzova2:=tip_kyzova; region2:=region; seek(f,filepos(f)-1); write(f,st); x:=1; end; end; close(f); end; if x=0 then begin writeln('Записи
с такой фамилией нет!');readln end; end;
{==============================================================} procedure Openfile; var rez:integer;ch:char; begin while rez<>0 do begin writeln('Задайте имя файла'); readln(filename); assign(f,filename); reset(f); rez:=IOResult; if rez<>0 then begin writeln('Проверьте правильность имени
файла!'); writeln('Будет ли повторное задание
имени файла ? (Y/N)'); readln(ch); if (ch='n') or (ch='N')
then halt (0); end; end; end;
{============================================================} procedure Outputfile; var st:prokat;k:char; begin writeln('Хотите посмотреть данные о клиентах ? (Y/N)'); readln(k); if (k='y') or (k='Y') then while not eof(f) do begin read(f,st); clrscr; writeln('Фамилия хозяина:',st.Sname_Hozaina); writeln('Имя хозяина:',st.Name_Hozaina); writeln('марка
машины:',st.markauto); writeln('модель машины:',st.model_auto); writeln('тип кузова:',st.tip_kyzova); writeln('номер машины:',st.nomer_auto); writeln('регион;',st.region); writeln('год выпуска:',st.god_vipyska); writeln('цвет:',st.color); writeln('Для продолжения
нажмите (enter)'); readln; end; close(f); end;
{========================================================} procedure Clearfile; var st:prokat; studtoout:string[20]; fo:file of prokat; begin writeln('Задайте имя файла,из которого
удаляются элементы'); readln(filename);
assign(f,filename);reset(f);
assign(fo,'newfile.dat');rewrite(fo); writeln('Задайте
фамилию клиента, запись о котором удаляется'); readln(studtoout); while not eof(f) do begin read(f,st); if
st.sname_Hozaina<>studtoout then write(fo,st); end; close(f);close(fo); erase(f); rename(fo,filename); end; {ОСНОВНАЯ ЧАСТЬ
ПРОГРАММЫ} Begin 11:clrscr; writeln(' МЕНЮ:'); writeln('1:Создание файла'); writeln('2:Добавление записи в файл'); writeln('3:Корректировка записи'); writeln('4:Просмотр файла'); writeln('5:Удаление записи из файла'); writeln('6:Выход из программы'); readln(k); case k of 1: begin Creatfile;
Inputfile end; 2: begin Addrecord;
Inputfile end; 3: redzap; 4: begin Openfile;
Outputfile end; 5: Clearfile; 6: Halt; else writeln('Ошибка.Повторите номер
режима.') end; goto 11; End. | |||||