Программа субд для хранения файлов. Обзор программ для создания баз данных
EMS Database Management Solutions предлагает комплексный набор бесплатных программ для управления базами данных , которые позволят вам повысить производительность работы с данными и эффективность администрирования базами данных. Эти бесплатные программы для управления базами данных помогут решить большинство административных задач, поскольку предоставляют необходимую функциональность для разработчиков баз данных и приложений для работы с данными, позволяя при этом отказаться от использования нескольких разносторонних утилит SQL.
EMS SQL Manager Freeware подойдет как новичкам, так и опытным разработчикам; он позволит легко контролировать инфраструктуру данных благодаря наличию всех необходимых инструментов для организации эффективного функционирования систем баз данных. Наши бесплатные инструменты дадут вам возможность заниматься администрированием серверов и разработкой баз данных, управлять пользователями и безопасностью, просматривать и редактировать данные, а также выполнять ряд других задач с помощью одного мощного приложения с понятным графическим интерфейсом.
Используя EMS SQL Manager Freeware, вы сможете работать c серверами, базами данных и схемами, просматривать, редактировать, искать, группировать, сортировать и фильтровать данные, создавать и выполнять запросы SQL с помощью мощного редактора SQL, работать с несколькими выбранными объектами одновременно и многое другое.
Мы предлагаем широкий набор бесплатных программ для администрирования баз данных наиболее популярных серверов. EMS SQL Manager Freeware поддерживает все серверные объекты, объекты баз данных и таблиц, а также последние версии серверов и функциональные возможности соответствующих РСУБД.
DbVisualizer 9.1.5
DbVisualizer is a database tool for developers and database administrators, helping you with both the development and maintenance of your databases.
Firebird 2.5.2
Firebird is a relational database offering many ANSI SQL standard features that runs on Linux, Windows, and a variety of Unix platforms. Firebird offers excellent concurrency, high performance, and powerful language support for stored procedures and triggers.
Reitec.PMM 1.2.1.0
Reitec.PMM is a free tool for the management of test equipment as part of quality assurance.
WowBase 1.1
Create your own database quickly and easily.
MyContacts 3.1
Managing contacts, birthdays and dates/tasks.
LibreOffice Rus для Windows 3.6.4
Офисный пакет LibreOffice - лучшая бесплатная альтернатива для Microsoft Office 2003, 2007 и даже 2010.
PhpMyAdmin 3.5.3
phpMyAdmin Rus - программа для управления базой данных MySQL, скачать и использовать которую можно бесплатно - как дома, так и в организации. Русская версия.
Oracle MySQL для Linux, UNIX, *BSD и других *nix 5.5.28 Final / 6.0.6 Beta
Oracle MySQL - Известный сервер базы данных. Знаменит безупречной стабильностью работы и скоростью.
Oracle MySQL для Windows 5.5.28 Final / 6.0.6 Beta
MySQL - одна из самых популярных баз данных с открытым кодом, скачать и использовать которую можно совершенно бесплатно.
- 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
Логически он разделен на два цикла, в первом цикле я получаю список SQL - инструкций для создания БД и затем выполняю их, во втором цикле я уже заполняю созданные ранее таблицы начальными данными. И так, шаг первый:
Private ArrayList
Тут все достаточно просто, мы просто читаем содержимое файлов, и конкатенируем содержимое каждого файла в элемент массива. Обратите внимание, что я произвожу сортировку списка файлов, так как таблицы могут иметь внешние ключи, а значит таблицы должны создаваться в определенном порядке. Я использую нумерацию в название файлов, и с помощью нею и произвожу сортировку.
Private class QueryFilesComparator implements Comparator
С заполнением таблиц все веселей. Таблицы у меня заполняются не только жестко заданными значениями, но также значениями из ресурсов и 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
Базы данных в Delphi пишутся для автоматизации работы в разнообразных сферах деятельности предприятий, к примеру, для организации информационно-справочных систем. В промышленности, программы на Delphi, позволяют уйти от рутинной работы с бумажными носителями информации. А, как известно, когда информация хранится на бумаге, то выполнить сортировку, поиск или какую-либо другую операцию достаточно долго, так как придется пересматривать все вручную.
Когда имеется готовая база данных в Delphi, то не нужно затрачивать свое время на изучение и написание программного кода для курсовой или дипломной работе по программированию баз данных. В наличии имеется много реализованных проектов баз данных, позволяющих написать свою работу на хорошую оценку. Большой выбор проектов на субд Access в Delphi 7 позволит выбрать самый подходящий проект для защиты, такие исходники как учет товаров, учет программ и т.д.. Также имеются проекты с базой данных MySQL и InterBase.
Сферы, где применяются базы данных
- Государственные учебные заведения;
- Перепись населения. Такая база данных позволяет специальным органам проводить быстрый просчет статистики по населению страны. К примеру, можно выполнить сравнение по количеству жителей в разные года выбранного города. Вести базу сотрудников, которые выполняют обход по закрепленным адресам.
- Коммерческие организации . К ним относятся муниципальные предприятия (унитарные), производственные кооперативы, хозяйственные общества и хозяйства.
- Торговые предприятия;
- Агентства недвижимости;
- Тур-агентства;
- и прочие предприятия.
Многие компании создают различные многофункциональные приложения для облегчения управления, разработки и администрирования баз данных.
Большинство реляционных баз данных, за исключением MS Access, состоят из двух отдельных компонентов: «back-end», где хранятся данные и «front-end» - пользовательский интерфейс для взаимодействия с данными. Этот тип конструкции достаточно умный, так как он распараллеливает двухуровневую модель программирования, которая отделяет слой данных от пользовательского интерфейса и позволяет сконцентрировать рынок ПО непосредственно на улучшении своих продуктов. Эта модель открывает двери для третьих сторон, которые создают свои приложения для взаимодействия с различными базами данных.
В Интернете каждый может найти много продуктов для разработки и администрирования баз данных MySQL. Мы решили собрать 10 самых популярных инструментов в одной статье, чтобы вы смогли сэкономить свое время.
1. Workbench
Первое место, по праву принадлежит инструменту Workbench (разработка компании Sun Systems/Oracle), который может работать на платформах Microsoft Windows, Mac OS X и Linux. Workbench объединяет в себе разработку и администрирование баз данных и является преемником DBDesigner4.MySQL Workbench распространяется под свободной лицензией - Community Edition и с ежегодной оплачиваемой подпиской - Standard Edition. Последняя включает в себя дополнительные возможности, которые способны существенно улучшить производительность, как разработчиков, так и администраторов баз данных.
Стоимость - бесплатно.
Что делает Workbench популярным?
- возможность представить модель БД в графическом виде, а также редактирование данных в таблице;
- наличие простого и функционального механизма по созданию связей между полями таблиц, среди которых реализована связь «многие-ко-многим» с возможностью создания таблицы связей;
- функция Reverse Engineering позволяет восстанавливать структуру таблиц и связей из той, которая была реализована ранее и хранится на сервере БД;
- наличие редактора SQL-запросов, который дает возможность при отправке на сервер получать ответ в табличном виде и другие возможности.
2. Navicat
Второе место занимает Navicat (разработка компании PremiumSoft CyberTech Ltd) - инструмент для разработки и администрирования баз данных, который работает на любом сервере MySQL, начиная с версии 3.21. Для MySQL, Navicat доступен для работы на платформах Microsoft Windows, Mac OS X и Linux.
Стоимость продукта варьируется от 199 до 379 долл. США.
Что делает Navicat популярным?
- наличие визуального конструктора запросов;
- возможность импорта, экспорта и резервного копирования данных;
- возможность создавать отчеты;
- SSH и HTTP туннелинг;
- миграция и синхронизация данных и структуры;
- инструмент для планирования задач и другие возможности.
3. PHPMyAdmin
PHPMyAdmin - бесплатное приложение с открытым кодом, предназначенное для администрирования СУБД MySQL. PHPMyAdmin представляет собой веб-интерфейс с помощью которого можно администрировать сервер MySQL, запускать команды и просматривать содержимое таблиц и БД через браузер.
Стоимость - бесплатно.
Что делает PHPMyAdmin популярным?
- возможность управлять СУБД MySQL без непосредственного ввода SQL команд;
- как панель управления PHPMyAdmin предоставляет возможность администрирования выделенных БД;
- интенсивное развитие;
- возможность интегрировать PHPMyAdmin в собственные разработки благодаря лицензии GNU General Public License и другие возможности.
4. dbForge Studio for MySQL
dbForge Studio for MySQL - инструмент, представляющий интерес как для пользователей MySQL, так и для разработчиков БД. С его помощью вы сумеете легко автоматизировать рутинную работу и сэкономить время. Сегодня dbForge Studio for MySQL представлен в трех редакциях: Express, Standard и Professional, что позволяет выбрать тот инструмент, который нужен именно вам. Пользоваться dbForge Studio for MySQL можно как коммерческой, так и бесплатной версией.
Существует как бесплатная, так и платная версии, цена последней составляет 49,95 долл. США (стандартное издание) и 99,99 долл. США (профессиональное издание).
Что делает dbForge Studio популярным?
- наличие средств для централизованного администрирования;
- инструменты для сравнения БД;
- визуальный профилировщик запросов;
- возможность управлять привилегиями пользователей;
- наличие Дизайнера БД, который позволяет строить визуальные диаграммы;
- улучшенная работа с проектами БД и другие возможности.
5. HeidiSQL
HeidiSQL - бесплатный инструмент для управления базами данных. Достойная альтернатива PHPMyAdmin, которая позволяет создавать и редактировать таблицы, представления, триггеры, процедура, а также просматривать и редактировать данные. Также HeidiSQL предоставляет возможность экспорта данных как в SQL файл, так и в буфер обмена на других серверах.
Стоимость - бесплатно.
Что делает HeidiSQL популярным?
- возможность подключаться к серверу с помощью командной строки;
- возможность пакетной оптимизации и восстановления таблиц;
- возможность редактирования столбцов, индексов и внешних ключей таблиц, редактирование тела и параметров SQL процедур, триггеров и др.;
- простое форматирование неупорядоченных SQL;
- синхронизация таблицы между разными базами данных и другие возможности.
6. SQL Maestro для MySQL
SQL Maestro для MySQL - инструмент для администрирования, разработки и управления наиболее востребованных СУБД. Удобный графический интерфейс дает возможность выполнять SQL запросы и скрипты, управлять привилегиями пользователей, экспортировать и создавать резервные копии данных.
В зависимости от выбранной лицензии и варианта использования, стоимость данного инструмента варьируется от 99 до 1949 долл. США.
Что делает SQL Maestro для MySQL популярным?
- поддержка версий MySQL сервера с версии 3.23;
- наличие конструктора баз данных;
- возможность редактирование, группировки, сортировки и фильтрации данных;
- визуальный конструктор запросов;
- SSH и HTTP туннелинг;
- BLOB-редактор и другие возможности.
7. EMS SQL Manager для MySQL
EMS SQL Manager для MySQL - инструмент для разработки и администрирования баз данных, который поддерживает различные функции MySQL и работает со всеми версиями MySQL старше 3.23. С его помощью у вас есть возможность визуально редактировать, импортировать и экспортировать БД, выполнять сценарии SQL, управлять привилегиями пользователей, визуально проектировать базы данных MySQL.
Существует платная и бесплатная версии приложения. Последняя имеет ряд функциональных ограничений. Стоимость платной версии варьируется в пределах 95 – 245 долл. США.
Что делает EMS SQL Manager for MySQLпопулярным?
- поддержка данных UTF8;
- простое управление различными объектами MySQL;
- совместимость со всеми версиями с 3.23 по 6.0 включительно;
- наличие графических и текстовых инструментов для формирования запросов;
- SSH и HTTP туннелинг;
- удобный конструктор отчетов и другие возможности.
8. SQLyog
SQLyog - один из наиболее мощных инструментов, который сочетает в себе возможности MySQL Administrator, PHPMyAdmin и некоторые другие инструменты для администрирования и разработки баз данных. SQLyog работает на платформах Microsoft Windows, Windows NT. и Linux с помощью Wine.
Доступна как бесплатная, так и платная версия SQLyog. Стоимость платной версии - от 99 до 1499 долл. США (варьируется в зависимости от количества пользователей и лицензии, с поддержкой или без нее).
Что делает SQLyog популярным?
- удобный конструктор запросов;
- возможность синхронизации данных;
- поддержка юникода;
- SSH и HTTP, HTTPS туннелинг;
- «умное» автозавершение работы;
- интеллектуальное дополнение кода и другие возможности.
9. DBTools Manager
DBTools Manager - приложение для управления данными, с встроенной поддержкой MySQL, PostgreSQL, MSAccess, MSSQL Server, Oracle и других БД. Поддерживаемые платформы: Windows 2000, XP, Vista, 7.
DBTools Manager представлен в бесплатном (Standard) и платном варианте (Enterprise). Стоимость составляет 69.90 долл. США за одну лицензию, при покупке нескольких лицензий предусмотрены скидки.
Подробнее ознакомиться и приобрести DBTools Manager можно здесь