Вконтакте Facebook Twitter Лента RSS

Бесплатные программы для разработки и администрирования баз данных. Программы для управления и работы с базами данных Программа для банка данных

  • Разработка под Android ,
  • SQLite
    • Tutorial
    • Recovery Mode

    Всем привет! Меня зовут Олег и я программист-любитель под Android. Любитель потому что в данный момент я зарабатываю деньги программированием в совсем другом направлении. А это хобби, которому я посвящаю свое свободное время. К сожалению у меня нет знакомых программистов под Android и все свои базовые знания я черпаю либо из книг, либо из интернета. Во всех тех книжках и статьях в интернете, которые я читал, созданию базы данных для приложения отводится крайне мало места и по сути все описание сводится к созданию класса являющегося наследником SQLiteOpenHelper и последующему внедрению SQL кода в Java код. Если не считать, что мы получаем плохо читаемый код (а если в нашем приложении появляется больше 10 таблиц, то вспоминать все эти взаимосвязи между таблицами тот еще ад), то в принципе жить можно конечно, но как-то совершенно не хочется.
    Забыл сказать самое главное, можно сказать что это моя проба пера тут. И так поехали.

    О вечном вопросе: почему?

    Почему в книгах и в статьях, посвященных программированию под Android, не описываются инструменты для проектирования архитектуры базы данных и какие-нибудь паттерны для работы с базами данных на этапе их создания я честно говоря не знаю. Казалось бы добавить всего пару страниц в книгу или написать отдельную статью (как делаю это я сейчас) проще простого - но нет. В этой статье, я кратко пройдусь по инструментам, которые я использую в своей работе и более подробно по коду который отвечает за начальное создание БД, который с моей точки зрения выглядит более читаемым и удобным.


    Если в нашем приложении больше 5 таблиц, то уже было бы не плохо использовать какой-нибудь инструмент для визуального проектирования архитектуры БД. Поскольку для меня это хобби, то и использую я абсолютно бесплатный инструмент под названием Oracle SQL Developer Data Modeler (скачать его можно ).

    Данная программа позволяет визуально рисовать таблицы, и строить взаимосвязи с ними. Многие ошибки проектирования архитектуры БД можно избежать при таком подходе проектирования (это я уже вам говорю как профессиональный программист БД). Выглядит это примерно так:

    Спроектировав саму архитектуру, приступаем к более нудной части, заключающийся в созданий sql кода для создания таблиц. Для помощи в этом вопросе, я уже использую инструмент под названием SQLiteStudio (его в свою очередь можно скачать тут ).

    Данный инструмент является аналогом таких известных продуктов как SQL Naviagator, Toad etc. Но как следует из названия, заточен он под работу с SQLite. Он позволяет визуально создать БД и получить DDL код создаваемых таблиц. Кстати, он также позволяет создавать представления (View), которые вы тоже при желании можете использовать в своем приложении. Не знаю насколько правильный подход использования представлений в программах для Android, но в одном из своих приложений я использовал их.

    Собственно говоря я больше не каких сторонних инструментов не использую, и дальше начинается магия с Android Studio. Как я уже писал выше, если начать внедрять SQL код в Java код, то на выходе мы получим плохочитаемый, а значит и плохо расширяемый код. Поэтому я выношу все SQL инструкции во внешние файлы, которые у меня находятся в директории assets . В Android Studio выглядит это примерно так:


    О директориях db и data

    Внутри директории assets я создал две директории db_01 и data_01 . Цифры в названиях директорий соответствуют номеру версии моей БД с которой я работаю. В директории db у меня хранятся сами SQL скрипты создания таблиц. А в директории data хранятся данные необходимые для начального заполнения таблиц.


    Теперь давайте посмотрим на код внутри моего DBHelper который я использую в своих проектах. Сначала переменные класса и конструктор (тут без каких либо неожиданностей):

    Private static final String TAG = "RoadMap4.DBHelper"; String mDb = "db_"; String mData = "data_"; Context mContext; int mVersion; public DBHelper(Context context, String name, int version) { super(context, name, null, version); mContext = context; mVersion = version; }
    Теперь метод onCreate и тут становится уже интереснее:

    @Override public void onCreate(SQLiteDatabase db) { ArrayList tables = getSQLTables(); for (String table: tables){ db.execSQL(table); } ArrayList> dataSQL = getSQLDatas(); for (HashMap hm: dataSQL){ for (String table: hm.keySet()){ Log.d(TAG, "insert into " + table + " " + hm.get(table)); long rowId = db.insert(table, null, hm.get(table)); } } }
    Логически он разделен на два цикла, в первом цикле я получаю список SQL - инструкций для создания БД и затем выполняю их, во втором цикле я уже заполняю созданные ранее таблицы начальными данными. И так, шаг первый:

    Private ArrayList getSQLTables() { ArrayList tables = new ArrayList<>(); ArrayList files = new ArrayList<>(); AssetManager assetManager = mContext.getAssets(); String dir = mDb + mVersion; try { String listFiles = assetManager.list(dir); for (String file: listFiles){ files.add(file); } Collections.sort(files, new QueryFilesComparator()); BufferedReader bufferedReader; String query; String line; for (String file: files){ Log.d(TAG, "file db is " + file); bufferedReader = new BufferedReader(new InputStreamReader(assetManager.open(dir + "/" + file))); query = ""; while ((line = bufferedReader.readLine()) != null){ query = query + line; } bufferedReader.close(); tables.add(query); } } catch (IOException e) { e.printStackTrace(); } return tables; }
    Тут все достаточно просто, мы просто читаем содержимое файлов, и конкатенируем содержимое каждого файла в элемент массива. Обратите внимание, что я произвожу сортировку списка файлов, так как таблицы могут иметь внешние ключи, а значит таблицы должны создаваться в определенном порядке. Я использую нумерацию в название файлов, и с помощью нею и произвожу сортировку.

    Private class QueryFilesComparator implements Comparator{ @Override public int compare(String file1, String file2) { Integer f2 = Integer.parseInt(file1.substring(0, 2)); Integer f1 = Integer.parseInt(file2.substring(0, 2)); return f2.compareTo(f1); } }
    С заполнением таблиц все веселей. Таблицы у меня заполняются не только жестко заданными значениями, но также значениями из ресурсов и UUID ключами (я надеюсь когда-нибудь прийти к сетевой версии своей программы, что бы мои пользователи могли работать с общими данными). Сама структура файлов с начальными данными выглядит так:


    Несмотря на то, что файлы у меня имеют расширение sql, внутри не sql код а вот такая штука:

    Prioritys
    pri_id:UUID:UUID

    pri_name:string:normal
    pri_color:color:colorGreen
    pri_default:int:1
    prioritys
    pri_id:UUID:UUID
    pri_object:string:object_task
    pri_name:string:hold
    pri_color:color:colorBlue
    pri_default:int:0
    prioritys
    pri_id:UUID:UUID
    pri_object:string:object_task
    pri_name:string:important
    pri_color:color:colorRed
    pri_default:int:0
    prioritys
    pri_id:UUID:UUID

    pri_name:string:normal
    pri_color:color:colorGreen
    pri_default:int:1
    prioritys
    pri_id:UUID:UUID
    pri_object:string:object_project
    pri_name:string:hold
    pri_color:color:colorBlue
    pri_default:int:0
    prioritys
    pri_id:UUID:UUID
    pri_object:string:object_project
    pri_name:string:important
    pri_color:color:colorRed
    pri_default:int:0

    Структура файла такая: я выполняю вызов функции split(":") применительно к строчке и если получаю что ее размер равен 1 то значит это название таблицы, куда надо записать данные. Иначе это сами данные. Первое поле это название поля в таблице. Второе поле тип, по которому я определяю что мне надо в это самое поле записать. Если это UUID - это значит мне надо сгенерировать уникальное значение UUID. Если string значит мне надо из ресурсов вытащить строковое значение. Если color, то опять-таки, из ресурсов надо вытащить код цвета. Если int или text, то я просто преобразую данное значение в int или String без каких либо телодвижений. Сам код выглядит вот так:

    Private ArrayList> getSQLDatas() { ArrayList> data = new ArrayList<>(); ArrayList files = new ArrayList<>(); AssetManager assetManager = mContext.getAssets(); String dir = mData + mVersion; try { String listFiles = assetManager.list(dir); for (String file: listFiles){ files.add(file); } Collections.sort(files, new QueryFilesComparator()); BufferedReader bufferedReader; String line; int separator = 0; ContentValues cv = null; String fields; String nameTable = null; String packageName = mContext.getPackageName(); boolean flag = false; HashMap hm; for (String file: files){ Log.d(TAG, "file db is " + file); bufferedReader = new BufferedReader(new InputStreamReader(assetManager.open(dir + "/" + file))); while ((line = bufferedReader.readLine()) != null){ fields = line.trim().split(":"); if (fields.length == 1){ if (flag == true){ hm = new HashMap<>(); hm.put(nameTable, cv); data.add(hm); } // наименование таблицы nameTable = line.trim(); cv = new ContentValues(); continue; } else { if (fields.equals("UUID")){ cv.put(fields, UUID.randomUUID().toString()); } else if (fields.equals("color") || fields.equals("string")){ int resId = mContext.getResources().getIdentifier(fields, fields, packageName); Log.d(TAG, fields + " " + resId); switch (fields){ case "color": cv.put(fields, resId); break; case "string": cv.put(fields, mContext.getString(resId)); break; default: break; } } else if (fields.equals("text")){ cv.put(fields, fields); } else if (fields.equals("int")){ cv.put(fields, Integer.parseInt(fields)); } } flag = true; } bufferedReader.close(); } } catch (IOException e) { e.printStackTrace(); } return data; }

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

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

    О SQL

    SQL - это язык программирования, который применяется для создания баз данных. Если его установить на компьютер и начать создавать базу данных, то будет не совсем удобно. Связано это с тем, что сам по себе SQL не имеет никакой графической оболочки, а запросы к базе данных нужно отправлять вообще через командную строку. По этой причине появились различного рода программы, которые упрощают разработку баз данных. Однако обучиться азам этого языка все же стоит. Вдруг нужно какой-то запрос сделать, а программа работает некорректно.

    Microsoft Access

    Эта программа для создания баз данных точно знакома многим. Ведь она идет в пакете программ Microsoft Office. Эта программа является одной из самых легких в освоении, ведь знания языка программирования SQL там практически не нужны. Можно лишь обозначить, какой запрос сделать, а программа сама составит SQL-запрос.

    Насчет актуальности программы. До сих пор базы данных множества организаций сделаны именно с помощью Microsoft Access. Действительно, сама программа очень легкая, есть интуитивно понятный интерфейс. Более того, основам работы в Access даже обучают в школе и на начальных курсах колледжа!

    PhpMyAdmin

    Access, конечно, программа хорошая, но если нужна база данных для сайта, она не справится. Тогда на помощь приходит PhpMyAdmin. Это очень полезная программа для создания баз данных. Установка на компьютер занимает некоторое время, да и при инсталляции легко что-то сделать не так, и не будет работать. Поэтому при установке этой программы для создания баз данных нужно четко следовать инструкции. Но плюсом еще PhpMyAdmin является то, что к ней можно получить доступ и через интернет в виде сайта! Например, у вас есть сайт, который работает на WordPress. У него будет база данных. И если у вас сайт на каком-нибудь хорошем хостинге, то, вероятнее всего, работа с базами данных будет осуществляться через PhpMyAdmin, и к нему можно будет получить доступ через панель управления хостинга.

    Еще одна программа для создания баз данных. Она бесплатная, но есть и платная версия с улучшенными возможностями. В этой программе легко создавать связи с таблицами, да и вообще, просто удобно работать. Также плюсом является то, что можно показать БД в графическом виде. Большинство людей при работе с базами данных отдают предпочтение именно этой программе. В принципе, и PhpMyAdmin по возможностям не уступает, но все-таки она больше предназначена для работы с БД сайтов.

    В этой статье были рассмотрены основные программы для создания баз данных. На самом деле их огромное множество, поэтому каждый выбирает инструмент под себя, но если же вы только осваиваетесь и желаете изучить эту область, то рекомендуется работать с MySQL WorkBench. После того как вы изучите основы SQL, для вас уже не будет существенной разницы, где работать, ведь запросы везде одинаковые. Удобно и то, что, создав базу данных в одной программе, можно ее открыть через другой софт, который тоже предназначен для работы с БД. При создании софта с базой данных не обойтись без этих знаний. Более того, освоив SQL, можно даже создать свое программное обеспечение для разработки и редактирования баз данных.

    EMS Database Management Solutions предлагает комплексный набор бесплатных программ для управления базами данных , которые позволят вам повысить производительность работы с данными и эффективность администрирования базами данных. Эти бесплатные программы для управления базами данных помогут решить большинство административных задач, поскольку предоставляют необходимую функциональность для разработчиков баз данных и приложений для работы с данными, позволяя при этом отказаться от использования нескольких разносторонних утилит SQL.

    EMS SQL Manager Freeware подойдет как новичкам, так и опытным разработчикам; он позволит легко контролировать инфраструктуру данных благодаря наличию всех необходимых инструментов для организации эффективного функционирования систем баз данных. Наши бесплатные инструменты дадут вам возможность заниматься администрированием серверов и разработкой баз данных, управлять пользователями и безопасностью, просматривать и редактировать данные, а также выполнять ряд других задач с помощью одного мощного приложения с понятным графическим интерфейсом.

    Используя EMS SQL Manager Freeware, вы сможете работать c серверами, базами данных и схемами, просматривать, редактировать, искать, группировать, сортировать и фильтровать данные, создавать и выполнять запросы SQL с помощью мощного редактора SQL, работать с несколькими выбранными объектами одновременно и многое другое.

    Мы предлагаем широкий набор бесплатных программ для администрирования баз данных наиболее популярных серверов. EMS SQL Manager Freeware поддерживает все серверные объекты, объекты баз данных и таблиц, а также последние версии серверов и функциональные возможности соответствующих РСУБД.

    Введение

    База данных (БД) - это именованная совокупность данных, отражающая состояние объектов и их отношений в предметной области.

    СУБД – это компьютерная программа, ответственная за создание, редактирование, удаление и, как правило, хранение баз данных (БД) или коллекций записей данных.

    Функции СУБД:

    1.Определение структуры создаваемой базы данных, ее инициализация и проведение начальной загрузки.

    2. Предоставление пользователям возможности манипулирования данными (выборка необходимых данных, выполнение вычислений, разработка интерфейса ввода/вывода, визуализация).

    3. Обеспечение логической и физической независимости данных.

    4. Защита логической целостности базы данных.

    5. Защита физической целостности.

    6. Управление полномочиями пользователей на доступ к базе данных.

    7. Синхронизация работы нескольких пользователей.

    8. Управление ресурсами среды хранения.

    9. Поддержка деятельности системного персонала.

    Глава 1

    1.1.Типы СУБД:

    Реляционные

    Реляционные СУБД являются наиболее распространенным видом систем управления базами данных на данный момент. Они действительно легки в использовании. Реляционные СУБД имеют такое название, т.к. они хранят упорядоченные данные в таблицах. Реляционная модель основывается на хранении упорядоченных данных в столбцах и строках. Данные могут быть связаны в пределах одной таблицы или разных таблиц. Типы реляционных СУБД могут уступать в производительности по сравнению с другими видами систем управления базами данных, однако они не имеют проблем с вычислительной мощностью и поиском памяти в современных ПК. Данные в этом типе СУБД хранятся в точно определенном виде, а управление ими, обычно, выполняется с помощью языка программирования SQL (Structured Query Language). Так же можно указать наиболее популярные типы СУБД – Oracle, MSSqlServer, IBMDB2,PostgreSQL и многие другие.

    Системы управления базами данных с плоскими файлами

    СУБД с плоскими файлами (FlatFile), возможно, являются наиболее простыми из всех. Их еще иногда называют плоской моделью. Идея заключается в запуске одинокого приложения, которое содержит настройки программы и оригинальный формат модели хранения. Плоские файлы в форматированных строках и столбцах предполагают, что каждый элемент в конкретной модели содержит ту же информацию. Один широко известный пример данного типа СУБД – это CSV (Comma Separated Values) и другим являются таблицы, как MS Excel.

    Иерархические

    Иерархические СУБД основываются на использовании модели семейного дерева. Здесь элементы обычно имеют отношение один-ко-многим и хорошо хранить информацию с описанием элементов, характеристиками и т.п. Здесь можно хранить книгу с главами и стихами. Иерархические типы СУБД могу использоваться для хранения баз данных с песнями, рецептами, моделями телефоном и вообще с чем угодно, что может храниться во вложенном формате. Иерархические виды систем управления базами данных могут уступать в эффективности при работе с различными реальными объектами. Одним из примеров иерархических типов СУБД является документ XML.

    Сетевые

    Сетевые системы управления базами данных используют, схожую с иерархической, модель данных. Главное различие заключается в том, что структура сетевой СУБД позволяет иметь много родителей для многих потомков. Сетевые типы СУБД основываются на записях и множествах, а для своей работы используют SQL. Сетевые системы управления базами данных склонны к большой гибкости, однако они стали редко использоваться после 1960-1970. В поисках необходимого элемента, запрашивающая программа проходит полностью все установленные элементы, что может быть слишком громоздко. Данный тип систем управления БД был практически заменен реляционными.

    Выбор программы для написания базы данных

    В своей курсовой работе я использовала реляционную базу данных используя программу Microsoft Access.

    Microsoft Access – одна из наиболее популярных СУБД для операционной системы Microsoft Windows . Кроме того, СУБД Access является мощной платформой разработки с гибкой и функциональной интегрированной средой. Microsoft Access может использоваться как инструмент для разработки и развертывания широкопредметных информационных бизнес-систем.

    В Access используются следующие основные типы полей :

    текстовый : предназначен для текстовой информации и чисел, когда нет необходимости выполнения математических операций с ними;

    числовой : предназначен для чисел при использовании их в математических расчетах;

    MEMO : предназначен для хранения произвольного текста или комментариев (длиной до 64000 символов);

    денежный : предназначен для хранения чисел, отражающих денежные суммы;

    дата/время : предназначен для хранения информации о дате и времени;

    счетчик : специальное числовое поле, предназначенное для автоматического добавления уникального номера текущей записи в таблице данных.

    логический : предназначен для хранения всего двух значений “Истина” и “Ложь”;

    поле объекта OLE : предназначено для хранения объектов, созданных другими приложениями (рисунки, графики, диаграммы).

    В Microsoft Access существует несколько способов отобрать только требуемые данные при выполнении поиска конкретного значения, одной записи или группы записей.

    С помощью диалогового окна “Поиск” легко найти конкретные записи или определенные значения в полях. При обнаружении каждого вхождения требуемого элемента выполняется перемещение по записям. Если нужно заменить конкретные обнаруженные при поиске значения, следует воспользоваться диалоговым окном “Замена”.

    Запросы дают возможность работать с конкретным набором записей, которые удовлетворяют условиям, заданным для одной или нескольких таблиц базы данных. При выполнении запроса становится возможной независимая работа с этим набором записей в конкретной форме или в объекте в режиме таблицы.

    Сортировка дает возможность упорядочить строки в таблице согласно содержимому одного или нескольких столбцов. Для сортировки выбирается поле, по которому будет осуществляться сортировка, и нажимается кнопка “Сортировка по возрастанию” или “Сортировка по убыванию” на панели инструментов.

    Фильтрация позволяет временно изолировать и просмотреть конкретный набор записей, отвечающих определенным условиям. Для фильтрации выбираются данные, по которым следует провести отбор, и нажимается кнопка “Фильтр по выделенному” на панели инструментов. Для того, чтобы поправить фильтр используется кнопка “Изменить фильтр”. Для задания более подробного условия для фильтрации в меню “Запись” используется команда “Фильтр” и подкоманда “Расширенный фильтр”. Для применения обычного или расширенного фильтра, используется кнопка “Применить фильтр” на панели инструментов.

    Глава 2

    Постановка задачи

    Цель базы данных Гостиница – автоматизация процесса учета и анализа данных гостиницы.

    Задачи, решаемые при использовании базы данных:

    Хранение и поиск данных о сотрудниках гостиницы;

    Хранение и поиск информации о клиентах гостиницы;

    Хранение и поиск информации о номерах;

    Хранение данных о бронировании, заселении, выезде клиентов и вычисление оплаты за проживание

    Вычисление и анализ информации о поступлении оплаты за проживание от клиентов компании;

    Поиск информации по основным позициям: забронированные номера, заезд за период, выезд за период.

    Создание базы данных

    Для создания базы данных MS Access использован Конструктор таблиц, который позволяет определить требуемую структуру таблицы.

    Для отображения полной информации по состоянию гостиницы, направлениям её деятельности и отчётности по выполненным работам, созданы следующие таблицы:

    1. «Сотрудники»

    Таблица имеет следующие поля: код сотрудника (ключевое поле)- тип данных: счётчик; фамилия, имя, отчество – тип данных: текстовый, размер – 50, необязательное, совпадения не допускаются; дата рождения –тип данных: дата\время, необязательное; образование –тип данных: мастер подстановок – набор фиксированных данных (высшее, среднее); должность –мастер подстановок(список имеющихся должностей); адрес – тип данных: текстовый, размер-50, необязательное; телефон – тип данных: числовой, поле необязательное; оклад – тип данных: денежный, формат поля – рубли, необязательное. Таблица в режиме конструктора имеет вид:

    2. «Должности»

    Данная таблица имеет следующие поля: код должности – счётчик (ключевое поле); должность – тип данных: текстовый (набор основных должностей).

    3. «Номера»

    Эта таблица имеет такие поля: код номера – тип данных счётчик (ключевое поле); категория – тип данных: мастер постановок (одноместный, двухместный, полулюкс, люкс)

    Поля: код категории – тип данных: счётчик (ключевое поле), номер – текстовый; категория – мастер подстановок (номера); количество мест – тип данных: числовой длинное целое, необязательное; количество комнат – аналогично; дополнительная информация – тип данных: МЕМО; стоимость в сутки – тип данных: денежный, формат – рубли, необязательное.

    5. «Состояние номера»

    Поля: код номера – счетчик, ключевое поле; номер - тип данных матер подстановок (аналогичное поле из таблицы «Категории номеров»); сотрудник (горничной) - мастер подстановок (из запроса по таблице «сотрудники», с условием отбора «горничная»), поля - бронь, заезд, выезд – тип данных: дата\время, поле необязательное; клиент – мастер подстановок (из таблицы «Клиенты»).

    6. «Клиенты»

    Поля: код клиента фамилия, имя, отчество – тип данных: текстовый, размер поля- 50, обязательное; дата рождения - тип данных: дата\время, обязательное; пол - мастер постановок (муж, жен); вид документа – мастер постановок (паспорт, в/у, удостоверение личности), обязательное; серия - текстовый, обязательное; номер – числовой, обязательное; кем выдан – текстовый, размер поля – 50, обязательное, дата выдачи – дата\время, обязательное.

    Поля: код ребёнка – тип данных: счётчик (ключевое поле); код клиента – тип данных: мастер подстановок (аналогичное поле из таблицы «клиенты»); фамилия, имя, отчество – тип данных: текстовый, размер поля – 50; дата рождения – тип данных: дата\время.

    Схема данных имеет вид:

    Таблица Состояние номеров и Сотрудники связаны через запрос по Сотрудникам, с условием отбора «горничная».

    Для удобства работы созданы запросы для базы Гостиница.

    Запрос №1 – «Бронь»

    В строке Условие отбора введено следующее условие:

    >=[с] And <=[по]

    Означающее отбор полей за определенный период времени.

    Аналогично созданы запросы 2 и 3.

    Запрос №2 - «Заезд в номера»

    Запрос №3 – «Выезд из номеров»

    Запрос №4 – «Клиенты с детьми».

    Запрос в режиме конструктора выглядит следующим образом:

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

    Запрос №5 – «Оплата за проживание».

    Запрос содержит выражение, отражающие вычисление стоимости проживания для каждого клиента.

    Запрос №6 – «Оплачено за месяц».

    Запрос содержит выражение, отражающие вычисление стоимости проживания для каждого клиента:

    Оплата за проживание: (Состояние_номера.Выезд-Состояние_номера.Заезд+1)*Категории_номеров.[Стоимость в сутки].

    А также отбор полей за период.

    Запрос №7 – «Оплата для графика».

    Аналогичен запросу 6, за исключением выбора периода для отбора полей. На основании данных этого запроса строятся диаграммы для анализа, а также сводные таблицы.

    Запрос №8 – «Должности Запрос».

    Запрос с условием отбора по сотрудникам «горничная». Используется для подстановки данных в таблицу Состояние номеров.

    Создание этих запросов значительно упрощает деятельность по отчётности в гостинице, удобно систематизирует информацию, и позволяет оперативно её использовать и вносить изменения. Список запросов представлен ниже:

    Отчеты следующие:

    Работа с базой начинается с открытия формы Гостиница:

    Слева кнопки для открытия отчетов, справа для введения и просмотра данных по основным позициям.

    Например, форма Информация о номерах имеет следующий вид:

    Здесь можно посмотреть всю информацию о номере гостиницы, а также список всех номеров, выбираю в котором позицию, мы можем тут же увидеть всю информацию о номере. В Левом нижнее углу расположены кнопки для удобства работы с записями. В правом верхнем кнопка для открытия формы Ввести категорию номера.

    Используя кнопку Бронирование Заезд Выезд, мы откроем форму:

    В которой имеются три вкладки:

    Информация о номерах – полная информация о имеющихся номерах;

    Динамика поступлений – динамика поступлений по номеру:

    Свод по оплате – сводные данные по оплате за номер:

    Кнопка Сотрудники гостиницы открывает следующую форму:

    Здесь можно посмотреть информацию о сотрудниках, а также ввести необходимую информацию.

    С помощью выведения отчетов, решаются задачи поиска информации о состоянии номеров: бронь, заезд, выезд, - а также отражение информации об оплате, вывод квитанции для клиента.

    Таким образом, данная база решает поставленные задачи.

    Заключение

    В ходе выполнения курсовой работы была создана база данных «Гостиница». Эта база данных предназначена для работников, так как она упрощает процесс обслуживания клиентов.

    В эту базу данных входит: таблицы, запросы, формы и отчеты, а так же окно автозапуска для удобства работы.

    Литература:

    1. Дейт, К., Дж. Введение в системы баз данных. 6-е изд. – К.; М., СПб.: «Вильямс», 2000. – 848с.

    2. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных: Учебник для высших учебных заведений/Под ред. проф. А.Д. Хомоненко. – СПб.: КОРОНА принт, 2002. – 672с.

    3. В.В. Корнеев, А.Ф. Гареев, С.В. Васютин, В.В. Райх Базы данных. Интеллектуальная обработка информации. – М.: Нолидж, 2001.- 496с.

    4. Праг К., Ирвин М., “Библия пользователя Access для Windows 2000”, К.:Диалектика, 2001 – 576с..

    5. Гарнаев А.С, "Самоучитель VBA", СПб, 1999. – 104с.

    6. Microsoft Access 2010. Разработка приложений на реальном примере - Г. Гурвиц - 496с.

    7. Проектирование баз данных. СУБД Microsoft Access. Учебное пособие - Н. Н. Гринченко, Е. В. Гусев, Н. П. Макаров - 240с.

    8. Access 2007. Эффективное использование - В. Е. Кошелев - 590с.

    © 2024 Вопросы и ответы