Домой / Уроки по Windows / Создаем бд. Создание базы данных в Microsoft SQL Server – инструкция для новичков. Создание пустой БД в Access

Создаем бд. Создание базы данных в Microsoft SQL Server – инструкция для новичков. Создание пустой БД в Access

  • Tutorial

Всем привет! Меня зовут Олег и я программист-любитель под 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; }

Дельфины всегда вызывали доверие у людей. Они ассоциируются у нас с добротой и радостью. Хоть дельфин и является символом MySQL , но это никак не объясняет той популярности, которой она пользуется во всем мире:


Согласно актуальной статистике MySQL занимает первое место по распространенности в интернете среди всех систем реляционных БД.

Особенности MySQL

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

Особенности СУБД MySQL :

  • Чаще всего используется в качестве удаленного сервера;
  • Включает в себя большое количество типов таблиц;
  • Поставляется со специальным типом EXAMPLE , показывающим принцип создания новых таблиц;
  • Высокая степень масштабируемости за счет поддержки большинства популярных платформ;
  • Открытый исходный код – благодаря этому данная СУБД постоянно совершенствуется и модернизируется множеством разработчиков по всему миру;
  • Создано большое количество API , обеспечивающих взаимосвязь MySQL c основной частью всех программных языков;
  • Максимальный размер файла таблицы базы данных ограничивается лишь возможностями используемой операционной системы.

У ближайшего конкурента MySQL системы MS SQL Server в бесплатной редакции Express ограничение на размер базы данных составляет 10 ГБ.

  • Последняя версия СУБД 5.7.5m15 (тестовая ) вышла в сентябре 2014.

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

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

Среда PHPMyAdmin является одной из самых популярных оболочек для работы с MySQL . Ее интерфейс во многом облегчает администрирование баз данных.

Для создания базы данных MySQL через PHPMyAdmin делаем следующее:

  • Заходим в оболочку;
  • Переходим на вкладку «Базы данных »;
  • В первое поле вводим название создаваемой базы данных, а из выпадающего списка выбираем нужную кодировку. В нашем случае это utf8_genegal_ci .

Длина имени базы данных не должна превышать 64 символа.

  • Затем нажимаем на кнопку «Создать »:
  • После этого имя созданной БД MySQL должно появиться в списках слева и внизу:
Теперь создадим в нашей базе данных первую таблицу. Делаем следующее:
  • В списке слева находим имя нашей базы данных и нажимаем на него:
  • В следующем окне вводим название таблицы и задаем количество столбцов;
  • Затем нажимаем на кнопку «Ok ».

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

  • Следующим шагом задаем структуру нашей таблицы. Прописываем имена и типы данных, которые будут храниться в столбцах таблицы;
  • После этого нажимаем на кнопку «Сохранить »:
  • Таблица нашей БД MySQL создана и готова для заполнения данными:
Но это не единственный способ, как можно создать базу данных в PHPMyAdmin . Аналогичный эффект можно получить, если воспользоваться SQL запросом. Для этого применяется команда CREATE . Ее синтаксис:

CREATE DATABASE db_name ;

Аргументы:

  • IF NOT EXISTS – служит для отслеживания уникальности имени базы данных. Если не указывать этот параметр, то в случае создания базы с одинаковым названием может возникнуть ошибка выполнения запроса;
  • db_name – указывается имя создаваемой базы данных;
  • CHARACTER SET charset – устанавливается кодировка базы данных. Если не указано, то используется значение по умолчанию;
  • COLLATE collation – задается порядок сортировки данных. Необязательный параметр.

Теперь создадим базу данных с помощью SQL запроса через оболочку PHPMyAdmin :

  • Переходим на вкладку «SQL »;
  • В появившемся окне редактора вводим запрос на создание базы данных;
  • Или жмем на иконку «Окно запроса ». Она находится слева над списком баз данных:
  • Вводим текст запроса:

CREATE DATABASE `my_db`;

  • Внизу нажимаем на «Ok »:
  • После этого название нашей базы данных отобразится в списке слева:
Для удаления sql базы данных используйте команду DROP DATABASE «my_db» .
  • Запрос для создания базы данных с указанием необязательных параметров будет выглядеть следующим образом:

CREATE DATABASE `my_db` CHARACTER SET utf8 COLLATE utf8_general_ci;

Настройка резервного копирования базы данных

Возможность восстановления базы данных очень важна. В случае непредвиденных ситуаций восстановление поможет вернуть утраченную информацию и быстро возобновить работу ресурса.

Настраиваем резервное копирование базы данных в PHPMyAdmin . Порядок действий:

  • В списке слева выбираем нужную нам базу данных;
  • Жмем на вкладку «Экспорт »;
  • Нажимаем «Ок ».
Если в разделе «Способ экспорта » выбрать значение «Обычный », то перед вами раскроется большое окно с множеством параметров для настройки:
Теперь попытаемся восстановить сохраненную копию базы. Но для начала удалим уже существующий экземпляр. Переходим во вкладку «Операции » и нажимаем ссылку «Удалить базу данных »:
Для восстановления базы MySQL в PHPMyAdmin переходим на вкладку «Импорт ». В разделе «Импортируемый файл » в зависимости от места, где вы сохраняли копию базы данных, выбираем источник. После этого жмем на кнопку «ОК », расположенную в нижней части экрана:
Иногда после внесения каких-либо изменений требуется восстановить не всю базу данных, а лишь определенную таблицу. Такая возможность также реализована в PHPMyAdmin . Для этого на странице нужной таблицы внизу ее структуры из выпадающего списка выбираем соответствующий пункт и внизу жмем на «Ок »:

Сжатие баз данных в MySQL

К сожалению, в MySQL изменение или ограничение размера баз данных не поддерживается. Из средств, встроенных в PHPMyAdmin для этого можно использовать лишь оптимизацию таблиц. Данная операция является еще одним параметром из выпадающего списка, изображенного выше.

Также для уменьшения размеров базы данных рекомендуется сохранять ее резервные копии в виде архивов. Сжатие (компрессия ) резервных копий настраивается в одноименном пункте на вкладке «Экспорт » в разделе «Вывод ».

Тема 2.3. Программные средства презентаций и основы офисного программирования

Тема 2.4. Системы управления базами данных и экспертные системы

2.4.11. Учебная база данных с главной кнопочной формой "Training_students" - Скачать

СУБД и экспертные системы

2.4. Системы управления базами данных и экспертные системы

2.4.3. Создание базы данных (способы создания таблиц и создание структуры таблиц для базы данных "Деканат")

При первом открытии окна базы данных Access всегда активизирует вкладку Таблицы и выводит на экран список режимов создания таблиц:

  • создание таблицы в режиме конструктора;
  • создание таблицы с помощью мастера;
  • создание таблицы путем ввода данных

Для создания новой таблицы можно выбрать любой из этих режимов. Можно выбрать Мастер таблиц для определения полей таблицы с помощью списков образцов таблиц и полей. Для создания произвольной таблицы целесообразно пользоваться режимом Конструктора. Режим Создание таблицы путем ввода данных используется, как правило, для редактирования и ввода данных в уже существующие таблицы.

Напомним, что таблицей Access является совокупность данных объединенных общей темой. Для каждой сущности назначается отдельная таблица, чтобы не было повторений в сохраненных данных. Таблицы состоят из записей и полей. Количество полей в записи определяется на стадии проектирования таблицы, поэтому прежде чем создавать таблицу с помощью приложения Access, необходимо четко представлять ее структуру.

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

Чтобы задать первичный ключ в режиме Конструктора, необходимо выделить требуемое поле, а затем щелкнуть на пиктограмме «Ключевое поле», расположенной на панели инструментов. Для назначения Внешнего (Вторичного) ключа в режиме Конструктора, необходимо выделить поле и в области свойств этого поля в строке Индексированное поле из списка выбрать значение Да (Совпадения допускаются).

Для выбора необходимого режима создания таблиц можно дважды щелкнуть на один из них в списке режимов, откроется требуемый режим. Кроме того, можно щелкнуть на пиктограмме «Создать» в окне БД, откроется окно диалога «Новая таблица», и в нем выбрать требуемый режим создания таблицы.


Рис. 1.

При выборе режима Мастер таблиц откроется окно «Создание таблиц», в котором с помощью образцов таблиц и полей легко сформировать поля новой таблицы.



Рис. 2.

Но если в окне «Создание таблиц» нет требуемого образца таблицы, то необходимо выбрать режим Конструктора, откроется окно Конструктора таблиц



Рис. 3.

Состав (структура) таблицы определяется в области проекта таблицы, которая состоит из трех колонок:

  • имя поля;
  • тип данных;
  • описание.

Типы данных необходимо выбрать из раскрывающегося списка:

  1. Текстовый – алфавитно–цифровые данные (до 255 байт).
  2. Поле МЕМО - длинный текст или числа, например, примечания или описания (до 64000 байт).
  3. Числовой - текст или комбинация текста и чисел (сохраняет 1, 2, 4 или 8 байтов).
  4. Дата/время – даты и время (8 байт).
  5. Денежный - используется для денежных значений (сохраняет 8 байтов).
  6. Счетчик – автоматическая вставка уникальных последовательных (увеличивающихся на 1) или случайных чисел при добавлении записи (4 байта).
  7. Логический – данные, принимающие только одно из двух возможных значений, например, «Да/Нет» (1 бит).
  8. Поле объекта OLE – для вставки следующих объектов: рисунки, картинки, диаграммы и т.д. (до 1 Гбайта).
  9. Гиперссылка – адрес ссылки на файл на автономном компьютере или в сети (сохраняет до 64 000 знаков).
  10. Мастер подстановок - создает поле, позволяющее выбрать значение из другой таблицы или из списка значений, используя поле со списком. При выборе данного параметра в списке типов данных запускается мастер для автоматического определения этого поля.

В области «Свойства поля» назначают свойства для каждого поля (например, размер, формат, индексированное поле и т.д.).

При создании структуры таблицы в первую колонку вводят Имя поля, затем необходимо нажать клавишу Enter и выбрать тип данных (по умолчанию Access назначает тип данных, если этот тип данных не подходит, то выберите самостоятельно из раскрывающегося списка). Затем введите в третью колонку описание поля.

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

В этой статье

Обзор

При первом запуске Access, а также при закрытии базы данных без завершения работы Access отображается представление Microsoft Office Backstage.

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

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

При открытии Access в представлении Backstage откроется вкладка создать . На вкладке " Создание " можно создать новую базу данных несколькими способами.

    Пустая база данных Если хотите, вы можете начать с нуля. Это хороший вариант, если у вас есть особые требования к проектированию или у вас есть необходимые данные, которые нужно разместить или добавить.

    Шаблон, установленный в Access Вы можете использовать шаблон, если вы запускаете новый проект и хотите начать с головного офиса. Access сопровождается несколькими шаблонами, установленными по умолчанию.

    Шаблон с сайта Office.com. В дополнение к шаблонам, поставляемым с Access, много других шаблонов доступно на сайте Office.com. Для их использования даже не нужно открывать браузер, потому что эти шаблоны доступны на вкладке Создать .

Добавление объектов в базу данных

При работе с базой данных в нее можно добавлять поля, таблицы и части приложения.

Части приложения - это функция, позволяющая использовать несколько связанных объектов базы данных как один объект. Например, часть приложения может состоять из таблицы и формы, основанной на ней. С помощью части приложения можно одновременно добавить в базу данных таблицу и форму.

Также можно создавать запросы, формы, отчеты, макросы - любые объекты базы данных, необходимые для работы.

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

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

    Таблица на вкладке Создание .

Создание пустой базы данных

Ввод данных в режиме таблицы - это очень похоже на работу на листе Excel. При вводе данных будет создана структура таблицы. При добавлении нового столбца в таблицу в таблице определяется новое поле. Microsoft Access автоматически задает тип данных каждого поля в зависимости от введенных данных.

Закрыть Да Нет Отмена

Совет: Access ищет файл с именем Blank.accdb в папке [диск установки]:\Program Files\Microsoft Office\Templates\1049\Access\. Если он существует, Blank.accdb используется как шаблон для всех новых пустых баз данных, за исключением веб-баз данных. Все новые базы данных наследуют содержимое этого файла. Это отличный способ распространения содержимого по умолчанию, например номеров компонентов или заявлений об отказе от ответственности и политик компании. Следует помнить, что файл Blank.accdb не влияет на создание новых пустых веб-баз данных.

Важно:

Добавление таблицы

Таблицы на вкладке Создать .

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

Независимо от способа создания таблицы рекомендуется проверить и задать свойства полей. Хотя некоторые свойства доступны в режиме таблицы, другие можно настроить только в режиме конструктора. Чтобы перейти в режим конструктора, в области навигации щелкните таблицу правой кнопкой мыши и выберите пункт Конструктор Свойства поля .

Свойства поля . Более подробные сведения можно получить, нажав кнопку справки.

Свойство

Описание

Размер поля

Формат поля

Маска ввода

Значение по умолчанию

Обязательное поле

Да

Копирование данных из другого источника в таблицу Access

Если ваши данные хранятся в другой программе, например Excel, их можно скопировать и вставить в таблицу Access. Как правило, этот метод работает лучше всего, если данные уже разделены на столбцы, как в таблице Excel. Если данные находятся в текстовом редакторе, перед копированием рекомендуется разделить столбцы данных с помощью табуляции или преобразовать данные в таблицу. Если необходимо изменить данные или выполнить с ними другие операции (например, разделить полное имя на имя и фамилию), рекомендуется сделать это перед копированием данных, особенно если вы не знакомы с Access.

Access применяет имена к полям в зависимости от того, что оно найдено в первой строке вставленных данных. Если первая строка вставленных данных похожа на следующую строку, Access определяет, что первая строка является частью данных и присваивает полям общие имена (F1, F2 и т. д.). Если первая строка вставленных данных не похожа на приведенные ниже строки, Access определяет, что первая строка состоит из имен полей. Access называет поля соответствующим образом и не включает первую строку данных.

    В режиме таблицы дважды щелкните заголовок каждого столбца и введите описательное имя поля для каждого столбца.

    Еще раз сохраните таблицу.

Примечание: Конструктор

Импорт, добавление или связывание данных из другого источника


Таблицы в области навигации. Если выбрано добавление данных к существующей таблице, данные добавляются к ней. Если вы связываете данные, в группе Таблицы в области навигации создается связанная таблица.

Добавление части приложения

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

Например, часть приложения "Примечания" состоит из таблицы с полем идентификатора, имеющим тип "Счетчик", поля даты и поля MEMO. Ее можно добавить в базу данных и использовать как есть или с минимальными изменениями.

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

    Откройте вкладку Создание .

    В группе Шаблоны нажмите кнопку Части приложения . Появится список доступных частей.

    Щелкните часть приложения, которую вы хотите добавить.

Открытие существующей базы данных Access

    На вкладке Файл нажмите кнопку Открыть .

    В диалоговом окне Открытие файла базы данных найдите базу данных, которую нужно открыть.

    Выполните одно из следующих действий.

    • Чтобы открыть базу данных в режиме по умолчанию, дважды щелкните ее (режим по умолчанию может быть указан в диалоговом окне Параметры Access или установлен административной политикой).

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

      Открыть и выберите вариант Открыть для чтения

      Щелкните стрелку рядом с кнопкой Открыть и выберите вариант Монопольно

      Щелкните стрелку рядом с кнопкой Открыть и выберите вариант Монопольно для чтения

Примечание: Вы можете напрямую открывать файлы данных внешних форматов, например dBASE, Microsoft Exchange или Excel. Кроме того, можно открыть напрямую любой источник данных ODBC, например Microsoft SQL Server. Access автоматически создаст базу данных Access в одной папке с файлом данных и добавит ссылки на все таблицы внешней базы данных.

    Чтобы открыть одну из недавно использовавшихся баз данных, щелкните Последние на вкладке Файл и выберите имя файла базы данных. Access откроет базу данных, используя параметры, которые применялись при ее открытии в прошлый раз. Если список последних использовавшихся файлов не отображается, щелкните Параметры на вкладке Файл . В диалоговом окне Параметры Access нажмите кнопку Параметры клиента . В разделе Вывод на экран укажите количество документов, которые необходимо отобразить в списке "Последние документы" (не больше 50).

    Вы также можете показывать последние базы данных на панели навигации в представлении Backstage, чтобы получить доступ с помощью двух щелчков мыши: 1), а затем откройте последнюю базу данных, которую вы хотите открыть, в формате 2. В нижней части вкладки " последние " установите флажок Быстрый доступ к этому количеству последних баз данных и настройте количество отображаемых баз данных.

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

Используете Access 2007?

Страница "Приступая к работе с Microsoft Office Access"

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

Это начальная страница, на которой можно создать новую базу данных, открыть существующую или ознакомиться с информацией с сайта Microsoft Office Online.

Создание базы данных с помощью шаблона

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

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

Скачивание шаблона с сайта Office Online

Если на странице Приступая к работе с Microsoft Office Access нет нужного шаблона, то при наличия подключения к Интернету можно найти на сайте Office Online другие шаблоны.

    На странице Приступая к работе с Microsoft Office Access в разделе Дополнительно на веб-узле Office Online щелкните пункт Шаблоны .

    В окне браузера отобразится домашняя страница "Шаблоны" на сайте Office Online.

    Используйте средства поиска и навигации Office Online для поиска нужного шаблона Access, а затем следуйте инструкциям по его скачиванию. При этом файл базы данных скачивается на компьютер, а затем открывается в новом экземпляре Access. В большинстве случаев шаблоны разрабатываются таким образом, чтобы сразу открывалась форма ввода данных и можно было немедленно приступить к их вводу.

Дополнительные сведения о работе с шаблонами см. в статье Создание базы данных Access на компьютере с помощью шаблона .

Создание базы данных без использования шаблона

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

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

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

Создание пустой базы данных

Ввод данных в режиме таблицы напоминает работу с листом Microsoft Office Excel 2007. Структура таблицы создается при вводе данных - при каждом добавлении нового столбца в таблицу определяется новое поле. Access автоматически определяет тип данных каждого поля на основе введенных данных.

Если на этом этапе вводить данные в таблицу "Таблица1" не нужно, нажмите кнопку Закрыть . Если вы внесли изменения в таблицу, будет предложено сохранить их. Нажмите кнопку Да , чтобы сохранить изменения, кнопку Нет , чтобы не сохранять их, или кнопку Отмена , чтобы оставить таблицу открытой.

Важно: Если хотя бы один раз закрыть таблицу "Таблица1" без сохранения, она будет удалена полностью, даже если в нее введены данные.

Добавление таблицы

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

Создание таблицы в режиме таблицы. В режиме таблицы можно начать ввод данных сразу, структура таблицы при этом будет создаваться автоматически. Полям присваиваются имена с последовательными номерами ("Поле1", "Поле2" и т. д.), а тип данных автоматически задается с учетом вводимых данных.

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

Создание таблицы на основе шаблона. В Access есть шаблоны для часто используемых типов таблиц. Одним щелчком мыши можно создать полную и готовую к использованию структуру таблицы. При необходимости вы можете добавлять или удалять поля.

Задание свойств полей в режиме конструктора. Независимо от способа создания таблицы рекомендуется проверить и задать свойства полей. Это можно сделать только в режиме конструктора. Чтобы перейти в режим конструктора, в области навигации щелкните таблицу правой кнопкой мыши и выберите пункт Конструктор . Чтобы отобразить свойства поля, щелкните его в сетке конструктора. Свойства отображаются под сеткой конструктора в области Свойства поля .

Щелкните свойство поля, чтобы просмотреть его описание рядом со списком Свойства поля . Дополнительную информацию можно получить, нажав клавишу F1.

В следующей таблице описаны некоторые наиболее часто изменяемые свойства полей.

Свойство

Описание

Размер поля

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

Формат поля

Это свойство определяет формат отображения данных. Оно не влияет на фактические данные, сохраняемые в этом поле. Вы можете выбрать встроенный формат или задать собственный.

Маска ввода

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

Значение по умолчанию

Это свойство позволяет задать стандартное значение, которое будет отображаться в этом поле при добавлении новой записи. Например, для поля "Дата/время", в котором необходимо записывать дату добавления записи, в качестве значения по умолчанию можно ввести "Date()" (без кавычек).

Обязательное поле

Это свойство указывает, обязательно ли вводить значение в поле. Если для него задано значение Да , невозможно будет добавить запись, если в это поле не введено значение.

Если ваши данные хранятся в другой программе, например Office Excel 2007, их можно скопировать и вставить в таблицу Access. Как правило, этот метод работает лучше всего, если данные уже разделены на столбцы, как в таблице Excel. Если данные находятся в текстовом редакторе, перед копированием рекомендуется разделить столбцы данных с помощью табуляции или преобразовать данные в таблицу. Если необходимо изменить данные или выполнить с ними другие операции (например, разделить полное имя на имя и фамилию), рекомендуется сделать это перед копированием данных, особенно если вы не знакомы с Access.

При вставке данных в пустую таблицу приложение Access задает тип данных для каждого поля в зависимости от того, какие данные в нем находятся. Например, если во вставляемом поле содержатся только значения даты, для этого поля используется тип данных "Дата/время". Если же вставляемое поле содержит только слова "Да" и "Нет", для этого поля выбирается тип данных "Логический".

Access применяет имена к полям в зависимости от того, что оно найдено в первой строке вставленных данных. Если первая строка вставленных данных похожа на следующую строку, Access определяет, что первая строка является частью данных и присваивает полям универсальные имена (F1, F2 и т. д.). Если первая строка вставленных данных не похожа на приведенные ниже строки, Access определяет, что первая строка состоит из имен полей. Access называет поля соответствующим образом и не включает первую строку данных.

В Access имена присваиваются полям автоматически, поэтому во избежание путаницы поля следует переименовать. Это можно сделать следующим образом:

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

Возможно, у вас есть данные, хранящиеся в другой программе, которые вы хотите импортировать в новую таблицу Access или добавить в существующую. Кроме того, если ваши коллеги хранят данные в других программах, может потребоваться создать связь с такими данными. В обоих случаях работа с данными из других источников не представляет сложности. Вы можете импортировать данные из листа Excel, таблицы в другой базе данных Access, списка SharePoint и других источников. Процесс импорта для разных источников немного различается, однако всегда начинается так, как описано ниже.


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

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

Щелкните стрелку рядом с кнопкой Открыть и выберите вариант Монопольно , чтобы открыть базу данных в монопольном режиме. Если ее затем попытается открыть другой пользователь, он получит сообщение "Файл уже используется".

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

Если не удается найти базу данных, которую вы хотите открыть

    Щелкните значок Мой компьютер в диалоговом окне Открытие файла базы данных или выберите Мой компьютер в раскрывающемся списке Папка .

    В списке дисков щелкните правой кнопкой мыши диск, на котором может находиться база данных, и выберите команду Найти .

    Введите условие поиска в диалоговом окне Результаты поиска и нажмите кнопку Поиск для поиска базы данных.

    Если база данных найдена, дважды щелкните ее, чтобы открыть.

    Чтобы база данных открылась, необходимо нажать кнопку Отмена в диалоговом окне Открытие файла базы данных . Затем закройте диалоговое окно Результаты поиска .

Примечание: Вы можете напрямую открывать файлы данных внешних форматов, например dBASE, Paradox, Microsoft Exchange или Excel. Кроме того, можно открыть напрямую любой источник данных ODBC, например Microsoft SQL Server или Microsoft FoxPro. Access автоматически создаст базу данных Access в одной папке с файлом данных и добавит ссылки на все таблицы внешней базы данных.

    Для открытия одной из баз данных, которые открывались недавно, щелкните ее имя файла в списке Открыть последнюю базу данных на странице Приступая к работе с Microsoft Office Access . Access откроет базу данных, используя параметры, которые применялись при ее открытии в прошлый раз. Если список недавно использовавшихся файлов не отображается, нажмите кнопку Microsoft Office , а затем - Параметры Access . В диалоговом окне Параметры Access выберите пункт Дополнительно . В разделе Вывод на экран укажите количество документов, которые необходимо отобразить в списке "Последние документы" (не больше девяти).

    Если вы открываете базу данных нажатием кнопки Microsoft Office , а затем с помощью команды открыть , вы можете просмотреть список ярлыков баз данных, которые вы ранее открыли, щелкнув Мои недавние документы в окне Open (открыть ). диалоговое окно.

Создание пустого пользовательского шаблона

При создании новой пустой базы данных Access открывает новую таблицу, в которой можно вводить данные, но не создает никаких других объектов в базе данных. Если вы хотите, чтобы другие объекты (например, формы, отчеты, макросы или дополнительные таблицы) присутствовали во всех создаваемых базах данных, вы можете создать настраиваемый пустой шаблон, содержащий эти объекты. После того как вы создадите новую базу данных, в следующий раз они уже будут содержать эти объекты в шаблоне. В дополнение к этим объектам шаблон может включать таблицы, заполненные данными, а также особые параметры конфигурации, свойства базы данных, ссылки или код, которые должны быть доступны во всех новых базах данных.

Например предположим, что у вас есть набор макросов, которые должны использоваться во всех проектах. Если создать пустой шаблон с этими макросами, они будут автоматически добавляться во все создаваемые в Access базы данных.

Пустые шаблоны можно создать в виде файлов следующих форматов: Office Access 2007, Access 2002–2003 или Access 2000. Шаблон должен называться Blank.accdb в случае использования файлов формата Office Access 2007 и Blank.mdb для форматов файлов предыдущих версий.

    Если по умолчанию используется формат Access 2000 или Access 2002–2003, файл пустого шаблона получит имя Blank.mdb. Новая база данных будет создана в том же формате, что и файл Blank.mdb. Например, если по умолчанию используется формат Access 2000, а шаблон с именем Blank.mdb имеет формат файла Access 2002–2003, все новые базы данных будут создаваться в формате Access 2002–2003.

    Если по умолчанию используется формат Access 2007, файл пустого шаблона получит имя Blank.accdb.

Изменение формата файлов, используемого по умолчанию

    Нажмите кнопку Microsoft Office и щелкните Параметры Access .

    В диалоговом окне Параметры Access выберите пункт Основные .

    В группе Создание баз данных в раскрывающемся списке Формат файла по умолчанию выберите нужный формат.

Чтобы создать пустой шаблон, выполните одно из следующих действий:

    Создайте пустую базу данных (назовите ее "Пустая" или дайте ей любое временное имя), а затем импортируйте или создайте объекты, которые должны быть в шаблоне.

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

Когда нужные для шаблона объекты будут готовы, сохраните базу данных:

    Нажмите кнопку Microsoft Office и выберите команду Сохранить как .

    • Папка "системный шаблон" Например, C:\Program Files\Microsoft Office\Templates\1033\Access

      Папка шаблонов пользователей Ниже приведены некоторые примеры.

      • В Windows Vista C appdata\local\temp. Наме\аппдата\роаминг\микрософт\темплатес

        В Microsoft Windows Server 2003 или Microsoft Windows XP C:\Documents and Settings Наме\аппликатион Data\Microsoft\Templates

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

    В поле Имя файла введите Blank.accdb (или Blank.mdb , если создается шаблон одной из предыдущих версий), а затем нажмите кнопку Сохранить .

Теперь, когда вы создаете новую пустую базу данных, в новом шаблоне объекты будут включены в любую новую базу данных, созданную по умолчанию. Приложение Access откроет новую таблицу в режиме таблицы, как и при создании новых пустых баз данных без использования шаблона.

Чтобы прекратить использование пустого шаблона, удалите или переименуйте файл Blank.accdb (или файл Blank.mdb, если используется одна из предыдущих версий программы Access).

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

Руководство по проектированию баз данных.

1. Вступление.
Если вы собираетесь создавать собственные базы данных, то неплохо было бы придерживаться правил проектирования баз данных, так как это обеспечит долговременную целостность и простоту обслуживания ваших данных. Данное руководство расскажет вам что представляют из себя базы данных и как спроектировать базу данных, которая подчиняется правилам проектирования реляционных баз данных.

Базы данных – это программы, которые позволяют сохранять и получать большие объемы связанной информации. Базы данных состоят из таблиц , которые содержат информацию . Когда вы создаете базу данных необходимо подумать о том, какие таблицы вам нужно создать и какие связи существуют между информацией в таблицах. Иначе говоря, вам нужно подумать о проекте вашей базы данных. Хороший проект базы данных, как было сказано ранее, обеспечит целостность данных и простоту их обслуживания.
База данных создается для хранения в ней информации и получения этой информации при необходимости. Это значит, что мы должны иметь возможность помещать, вставлять (INSERT ) информацию в базу данных и мы хотим иметь возможность делать выборку информации из базы данных (SELECT ).
Язык запросов к базам данных был придуман для этих целей и был назван Структурированный язык запросов или SQL. Операции вставки данных (INSERT) и их выборки (SELECT) – части этого самого языка. Ниже приведен пример запроса на выборку данных и его результат.

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

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

Правила реляционной модели диктуют, как информация должна быть организована в таблицах и как таблицы связаны друг с другом. В конечном счете результат можно предоставить в виде диаграммы базы данных или, если точнее, диаграммы «сущность-связь», как на рисунке (Пример взят из MySQL Workbench).

Примеры.
В качестве примеров в руководстве я использовал ряд приложений.

РСУБД.

РСУБД, которую я использовал для создания таблиц примеров – MySQL. MySQL – наиболее популярная РСУБД и она бесплатна.

Утилита для администрирования БД.

После установки MySQL вы получаете только интерфейс командной строки для взаимодействия с MySQL. Лично я предпочитаю графический интерфейс для управления моими базами данных. Я часто использую SQLyog. Это бесплатная утилита с графическим интерфейсом. Изображения таблиц в данном руководстве взяты оттуда.

Визуальное моделирование.

Существует отличное бесплатное приложение MySQL Workbench. Оно позволяет спроектировать вашу базу данных графически. Изображения диаграмм в руководстве сделаны в этой программе.

Проектирование независимо от РСУБД.
Важно знать, что хотя в данном руководстве и приведены примеры для MySQL, проектирование баз данных независимо от РСУБД. Это значит, что информация применима к реляционным базам данных в общем, не только к MySQL. Вы можете применить знания из этого руководства к любым реляционным базам данных, подобным Mysql, Postgresql, Microsoft Access, Microsoft Sql or Oracle.

В следующей части я коротко расскажу об эволюции баз данных. Вы узнаете откуда взялись базы данных и реляционная модель данных.

2. История.
В 70-х – 80-х годах, когда компьютерные ученые все еще носили коричневые смокинги и очки с большими, квадратными оправами, данные хранились бесструктурно в файлах, которые представляли собой текстовый документ с данными, разделенными (обычно) запятыми или табуляциями.

Так выглядели профессионалы в сфере информационных технологий в 70-е. (Слева внизу находится Билл Гейтс).

Текстовые файлы и сегодня все еще используются для хранения малых объемов простой информации. Comma-Separated Values (CSV) - значения, разделённые запятыми, очень популярны и широко поддерживаются сегодня различным программным обеспечением и операционными системами. Microsoft Excel – один из примеров программ, которые могут работать с CSV–файлами. Данные, сохраненные в таком файле могут быть считаны компьютерной программой.

Выше приведен пример того, как такой файл мог бы выглядеть. Программа, производящая чтение данного файла, должна быть уведомлена о том, что данные разделены запятыми. Если программа хочет выбрать и вывести категорию, в которой находится урок "Database Design Tutorial" , то она должна строчка за строчкой производить чтение до тех пор, пока не будут найдены слова "Database Design Tutorial" и затем ей нужно будет прочитать следующее за запятой слово для того, чтобы вывести категорию Software .

Таблицы баз данных.
Чтение файла строчка за строчкой не является очень эффективным. В реляционной базе данных данные хранятся в таблицах. Таблица ниже содержит те же самые данные, что и файл. Каждая строка или “запись” содержит один урок. Каждый столбец содержит какое-то свойство урока. В данном случае это заголовок (title) и его категория (category).

Компьютерная программа могла бы осуществить поиск в столбце tutorial_id данной таблицы по специфическому идентификатору tutorial_id для того, чтобы быстро найти соответствующие ему заголовок и категорию. Это намного быстрее, чем поиск по файлу строка за строкой, подобно тому, как это делает программа в текстовом файле.

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

История реляционной модели.
Реляционная модель баз данных была изобретена в 70-х Эдгаром Коддом (Ted Codd), британским ученым. Он хотел преодолеть недостатки сетевой модели баз данных и иерархической модели. И он очень в этом преуспел. Реляционная модель баз данных сегодня всеобще принята и считается мощной моделью для эффективной организации данных.

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

- Oracle – используется преимущественно для профессиональных, больших приложений.
- Microsoft SQL server – РСУБД компании Microsoft. Доступна только для операционной системы Windows.
- Mysql – очень популярная РСУБД с открытым исходным кодом. Широко используется как профессионалами, так и новичками. Что еще нужно?! Она бесплатна.
- IBM – имеет ряд РСУБД, наиболее известна DB2.
- Microsoft Access – РСУБД, которая используется в офисе и дома. На самом деле – это больше, чем просто база данных. MS Access позволяет создавать базы данных с пользовательским интерфейсом.
В следующей части я расскажу кое-что о характеристиках реляционных баз данных.

3. Характеристики реляционных баз данных.
Реляционные базы данных разработаны для быстрого сохранения и получения больших объемов информации. Ниже приведены некоторые характеристики реляционных баз данных и реляционной модели данных.
Использование ключей.
Каждая строка данных в таблице идентифицируется уникальным “ключом”, который называется первичным ключом. Зачастую, первичный ключ это автоматически увеличиваемое (автоинкрементное) число (1,2,3,4 и т.д). Данные в различных таблицах могут быть связаны вместе при использовании ключей. Значения первичного ключа одной таблицы могут быть добавлены в строки (записи) другой таблицы, тем самым, связывая эти записи вместе.

Используя структурированный язык запросов (SQL), данные из разных таблиц, которые связаны ключом, могут быть выбраны за один раз. Для примера вы можете создать запрос, который выберет все заказы из таблицы заказов (orders), которые принадлежат пользователю с идентификатором (id) 3 (Mike) из таблицы пользователей (users). О ключах мы поговорим далее, в следующих частях.


Столбец id в данной таблице является первичным ключом. Каждая запись имеет уникальный первичный ключ, часто число. Столбец usergroup (группы пользователей) является внешним ключом. Судя по ее названию, она видимо ссылается на таблицу, которая содержит группы пользователей.

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


Когда вы создаете таблицу базы данных вы предоставляете тип данных для каждого столбца. К примеру, varchar – это тип данных для небольших фрагментов текста с максимальным количеством знаков, равным 255, а int – это числа.

Помимо типов данных РСУБД позволяет вам еще больше ограничить возможные для ввода данные. Например, ограничить длину или принудительно указать на уникальность значения записей в данном столбце. Последнее ограничение часто используется для полей, которые содержат регистрационные имена пользователей (логины), или адреса электронной почты.

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

Ввод адреса (текста) в поле, в котором вы ожидаете увидеть число
- ввод индекса региона с длинной этого самого индекса в сотню символов
- создание пользователей с одним и тем же именем
- создание пользователей с одним и тем же адресом электронной почты
- ввод веса (числа) в поле дня рождения (дата)

Поддержание целостности данных.
Настраивая свойства полей, связывая таблицы между собой и настраивая ограничения, вы можете увеличить надежность ваших данных.
Назначение прав.
Большинство РСУБД предлагают настройку прав доступа, которая позволяет назначать определенные права определенным пользователям. Некоторые действия, которые могут быть позволены или запрещены пользователю: SELECT (выборка), INSERT (вставка), DELETE (удаление), ALTER (изменение), CREATE (создание) и т.д. Это операции, которые могут быть выполнены с помощью структурированного языка запросов (SQL).
Структурированный язык запросов (SQL).
Для того, чтобы выполнять определенные операции над базой данных, такие, как сохранение данных, их выборка, изменение, используется структурированный язык запросов (SQL). SQL относительно легок для понимания и позволяет в т.ч. и уложненные выборки, например, выборка связанных данных из нескольких таблиц с помощью оператора SQL JOIN. Как и упоминалось ранее, SQL в данном руководстве обсуждаться не будет. Я сосредоточусь на проектировании баз данных.

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

Переносимость.
Реляционная модель данных стандартна. Следуя правилам реляционной модели данных вы можете быть уверены, что ваши данные могут быть перенесены в другую РСУБД относительно просто.

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

В следующей части подробнее рассмотрим первичные ключи.