Министерство образования и науки Красноярского края
краевое государственное бюджетное образовательное учреждение среднего профессионального образования (среднее специальное учебное заведение)
«Красноярский колледж радиоэлектроники, экономики и управления»
Отчёт
по практическим работам по дисциплине «Разработка и эксплуатация удаленных баз данных»
Специальность 230105 «Программное обеспечение вычислительной техники и автоматизированных систем»
Выполнил студент гр.9ПВ41 |
Чуруксаева Виктория Владимировна |
Проверил преподаватель ККРЭУ |
Суворова Нина Николаевна |
Оценка ____________________ |
Дата ___ _________ 2012г. |
Красноярск, 2012г.
Практическая работа
Приложение для работы с учебными базами данных
Цель работы
Целью работы является освоение основных приемов работы для:
создание новой базы данных;
размещение и настройка окон редактирования элементов записи базы данных;
размещение и настройка таблицы для вывода данных базы;
обработка данных с использованием непосредственного доступа к элементам базы данных;
создание и использование индексов для сортировки данных;
Для этого надо разрабатываем приложение, использующее:
базу данных с записями, содержащими поля различных типов;
окна редактирования для просмотра и редактирования данных базы данных;
таблицу для просмотра и редактирования данных;
основное меню для управления процессом обработки данных;
методы поиска данных по заданным поисковым признакам;
Задание на выполнение работы
Разработать интерактивную систему для обработки данных новой базы с заданным составом ее записей, содержащих различные типы данных.
просмотр данных в таблице и окнах редактирования;
2) поиск данных различными способами.
Рис. 1. – Объекты БД Access
Рис. 2. – Структура БД
Рис. 3. – Связи в БД
Процесс разработки приложения
Процесс выполнения работы включает следующие этапы:
разработка структуры (полей) записи базы данных;
разработка формы;
формирование фильтров для отбора данных;
разработка методов для:
а) отбора данных из базы данных по условию, определенному с помощью фильтров, статического и динамического запросов на языке SQL;
Рис. 4. Вид формы после установки и настройки всех ее компонентов.
Листинг .1. Текст модуля основной формы приложения для работы с учебными Бд
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls, DB, ADODB;
type
TForm1 = class(TForm)
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
ADODataSet1: TADODataSet;
DBNavigator1: TDBNavigator;
DBGrid1: TDBGrid;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOdataset1.Active:=false;
ADODataset1.CommandText:= 'SELECT STUDENT.SURNAME, STUDENT.NAME, STUDENT.BIRTHDAY FROM STUDENT WHERE (((STUDENT.BIRTHDAY)>#1/1/1992#));';
ADOdataset1.Active:=true;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ADOdataset1.Active:=false;
ADOdataset1.CommandText:='SELECT STUDENT.SURNAME &" "& STUDENT.NAME, STUDENT.STIPEND, STUDENT.KURS FROM STUDENT WHERE (((STUDENT.STIPEND)>0) AND ((STUDENT.KURS)=4));';
ADOdataset1.Active:=true;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
ADodataset1.Active:=false;
ADOdataset1.CommandText:='SELECT STUDENT.STUDENT_ID &"; "& STUDENT.NAME&"; "& STUDENT.SURNAME&"; "& STUDENT.KURS&"; "& STUDENT.CITY&"; "& STUDENT.BIRTHDAY FROM STUDENT;';
ADOdataset1.Active:=true;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
ADOdataset1.Active:=false;
ADOdataset1.CommandText:='SELECT STUDENT.STUDENT_ID &" "& STUDENT.NAME&" "& STUDENT.SURNAME &" Место жительства - "& STUDENT.CITY&" родился "& STUDENT.BIRTHDAY FROM STUDENT; ';
ADOdataset1.Active:=true;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
ADOdataset1.Active:=false;
ADOdataset1.CommandText:=' ';
ADOdataset1.Active:=true;
end;
end.
Рис. 5. Вид формы с запросом «Поиск студентов старше 20 лет».
Рис. 6. Вид формы с запросом «Поиск степендиантов 4 курса».
Рис. 7. Вид формы с запросом «Пробел и тире».
Рис. 8. Вид формы с запросом «Точка с запятой».
Практическая работа
База данных «Planshet_PC».
Рис.1. Структура таблицы Foto_Video
Рис. 2. Таблица Foto_Video
Рис. 3. Структура таблицы Nout_PC
Рис. 4. Таблица Nout_PC
Программа.
Рис. 5. Главное окно программы
Листинг 1.
unit Unit1;
Interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, DBCtrls, Grids, DBGrids, DB, ADODB;
type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADODataSet1: TADODataSet;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
form2.Visible:=true;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
form3.Visible:=true;
end;
end.
Рис. 6. Окно поиска по фотокамерам
Листинг 2.
unit Unit2;
Interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm2 = class(TForm)
Edit1: TEdit;
Label1: TLabel;
Button1: TButton;
Label2: TLabel;
Edit2: TEdit;
Button2: TButton;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm2.Button1Click(Sender: TObject);
begin
form1.adodataset1.Active:=false;
form1.ADODataSet1.CommandText:='SELECT Foto_Video.[ID], Foto_Video.[Фото и видеокамеры / Цифровые видеокамеры], Foto_Video.[Цена, руб] FROM Foto_Video WHERE (((Foto_Video.[ Фото и видеокамеры / Цифровые видеокамеры]) Like "%'+edit1.text+'%"));';
form1.adodataset1.Active:=true;
form2.Close;
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
form1.adodataset1.Active:=false;
form1.ADODataSet1.CommandText:='SELECT Foto_Video.[ID], Foto_Video.[ Фото и видеокамеры / Цифровые видеокамеры], Foto_Video.[ Цена, руб] FROM Foto_Video WHERE (((Foto_Video.[ Фото и видеокамеры / Цифровые видеокамеры]) Like "%'+edit2.text+'%mpix%"));';
form1.adodataset1.Active:=true;
form2.Close;
end;
procedure TForm2.Button3Click(Sender: TObject);
begin
form1.adodataset1.Active:=false;
form1.ADODataSet1.CommandText:='SELECT Foto_Video.[ID], Foto_Video.[ Фото и видеокамеры / Цифровые видеокамеры], Foto_Video.[ Цена, руб] FROM Foto_Video WHERE (((Foto_Video.[ Фото и видеокамеры / Цифровые видеокамеры]) Like "%'+edit1.text+'%" And (Foto_Video.[ Фото и видеокамеры / Цифровые видеокамеры]) Like "%'+edit2.text+'%mpix%"));';
form1.adodataset1.Active:=true;
form2.Close;
end;
end.
Рис. 6. Окно вывода результатов поиска по фотокамерам
Рис. 7. Окно поиска по ноутбукам
Листинг 3.
unit Unit3;
Interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm3 = class(TForm)
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Button3: TButton;
ComboBox1: TComboBox;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);
begin
form1.adodataset1.Active:=false;
form1.ADODataSet1.CommandText:='SELECT Nout_PC.[ID], Nout_PC.[ Ноутбуки и компьюторы / Ноутбуки], Nout_PC.[ цена, руб] FROM Nout_PC WHERE (((Nout_PC.[ Ноутбуки и компьюторы / Ноутбуки]) Like "%'+edit1.text+'%"));';
form1.adodataset1.Active:=true;
form3.Close;
end;
procedure TForm3.Button2Click(Sender: TObject);
begin
form1.adodataset1.Active:=false;
form1.ADODataSet1.CommandText:='SELECT Nout_PC.[ID], Nout_PC.[ Ноутбуки и компьюторы / Ноутбуки], Nout_PC.[ цена, руб] FROM Nout_PC WHERE (((Nout_PC.[ цена, руб])<= '+edit2.text+'));';
form1.adodataset1.Active:=true;
form3.Close;
end;
procedure TForm3.Button3Click(Sender: TObject);
begin
form1.adodataset1.Active:=false;
form1.ADODataSet1.CommandText:='SELECT Nout_PC.[ID], Nout_PC.[ Ноутбуки и компьюторы / Ноутбуки], Nout_PC.[ цена, руб] FROM Nout_PC WHERE (((Nout_PC.[ Ноутбуки и компьюторы / Ноутбуки]) Like "%'+edit1.text+'%") AND ((Nout_PC.[ цена, руб])<='+edit2.text+'));';
form1.adodataset1.Active:=true;
form3.Close;
end;
procedure TForm3.Button4Click(Sender: TObject);
begin
form1.adodataset1.Active:=false;
form1.ADODataSet1.CommandText:='SELECT Nout_PC.[ID], Nout_PC.[ Ноутбуки и компьюторы / Ноутбуки], Nout_PC.[ цена, руб] FROM Nout_PC WHERE (((Nout_PC.[ Ноутбуки и компьюторы / Ноутбуки]) Like "%'+combobox1.Items+'%"));';
form1.adodataset1.Active:=true;
form3.Close;
end;
end.
Рис. 8. Окно вывода результатов по поиску ноутбуков
Практическая работа
База данных «Ресторан»
Рис. 1. Схема данных.
Рис. 2. Таблица «Bludo».
Рис. 3. Таблица «Produkty»
Рис. 4. Таблица «Recept»
Программа.
Рис. 5. Главное окно программы
Рис. 6. Окно выполнения запроса
Листинг программы:
unit Unit1;