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

2015-07-04

Владимир Ткаченко

Источник: Обучение в интернет

Инструкция SQL (SELECT) или запрос на выборку данных из таблиц БД Access рассмотрена в работе SQL — язык доступа и управления СУБД Access. В этой статье рассмотрим инструкцию SQL (CREATE TABLE) запроса на изменение.

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

Рассмотрим создание структуры таблиц базы данных БД «Деканат» на основе модели «сущность – связь» в СУБД Access с помощью запросов SQL. Для этого создадим новую базу данных sql_training_st.mdb в приложении Access 2007.

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

Следует отметить, что файл новой базы данных сохраним в формате Access 2002-2003. После создания новой БД, в окне приложения будет отображаться окно БД на вкладке Режим таблицы и новая пустая таблица с именем Таблица 1 в режиме таблица.

Создание баз данных и таблиц. Литералы, имена баз данных и таблиц, переменные пользователя - Студенческий портал Рис. 2.

Закрываем Таблицу1, щелкнув правой кнопкой мыши на Таблица1 в окне редактирования, и в контекстном меню выбрав команду Закрыть. Далее создадим структуру таблицы Группы аналогичную структуре таблицы Группы, созданной в Конструкторе, используя команду SQL create table.

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

Создание баз данных и таблиц. Литералы, имена баз данных и таблиц, переменные пользователя - Студенческий портал Рис. 3.

  • Затем создаем структуру таблицы «Группы», для этого выберем режим SQL, выполнив команду Вид/ Режим SQL. Удаляем появившуюся в окне запроса команду SELECT и вводим с клавиатуры следующую команду:
  • create table Группы (КодГруппы COUNTER CONSTRAINT PrimaryKey PRIMARY KEY, Название char(6), Курс int,
  • Семестр int);

Сохраняем запрос с именем «Создание Группы». В результате в «Области переходов» появится несвязанный объект — «Создание Группы». После сохранения запроса необходимо выполнить этот запрос, щелкая на пиктограмме «Выполнить». В результате выполнения команды «create table Группы» в «Области переходов» появится объект — «Группы: таблицы».

Создание баз данных и таблиц. Литералы, имена баз данных и таблиц, переменные пользователя - Студенческий портал Рис. 4.

Закроем окно «Создание Группы» и откроем объект – «Группы: таблица» в режиме конструктора.

Создание баз данных и таблиц. Литералы, имена баз данных и таблиц, переменные пользователя - Студенческий портал Рис. 5.

  1. Созданная с помощью запроса на изменение структура таблицы «Группы» аналогична структуре таблицы «Группы студентов», созданной в режиме «Конструктор».
  2. Затем создаем структуру таблицы «Студенты», для этого выберем режим SQL, выполнив команду Вид/ Режим SQL. Удаляем появившуюся в окне запроса команду SELECT и вводим с клавиатуры следующую команду:
  3. create table Студенты (КодСтудента COUNTER CONSTRAINT PrimaryKey PRIMARY KEY, КодГруппы int, Фамилия char(20), Имя char(15), Отчество char(15), Пол char(1), Дата_рождения DATE, Место_рождения MEMO,
  4. FOREIGN KEY (КодГруппы) REFERENCES Группы (КодГруппы));
  5. Для описания связей между таблицами «Группы» и «Студенты» через поле «КодГруппы» (отношение «один-ко-многим»), а также обеспечения целостности базы данных применена запись «FOREIGN KEY (КодГруппы) REFERENCES Группы (КодГруппы)».

Сохраняем запрос с именем «Создание Студенты». В результате в «Области переходов» появится несвязанный объект — «Создание Студенты». После сохранения запроса необходимо выполнить этот запрос, щелкая на пиктограмме «Выполнить». В результате выполнения команды «create table Студенты» в «Области переходов» появится объект — «Студенты: таблицы».

Создание баз данных и таблиц. Литералы, имена баз данных и таблиц, переменные пользователя - Студенческий портал Рис. 6.

Источник: https://www.lessons-tva.info/articles/informat/33.html

Создание таблицы базы данных Access — Базы данных Access

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

Запись состоит из полей (столбцов), каждое из которых включает такие атрибуты сущности, как наименование, ИНН, адрес и телефон. Для однозначной идентификации записи в таблице определяется уникальный простой или составной ключ. База данных может содержать множество таблиц.

Разработка базы данных начинается с создания таблиц.

Создание таблицы базы данных

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

В Access создание таблицы может быть выполнено в одном из двух режимов:

  • в режиме конструктора (Design View), позволяющем максимально полно определить структуру таблицы;
  • в режиме таблицы (Datasheet View), предназначенном, прежде всего, для создания, просмотра, поиска, корректировки ее записей и, кроме того, реализующем функции, обеспечивающие определение структуры таблицы.

Создание таблицы базы данных в режиме таблицы

Рассмотрим, прежде всего, создание таблицы в режиме таблицы, т. к.

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

В процессе создания новой базы данных в ней автоматически создается новая пустая таблица с именем Таблица1 (Table1), которая открывается в области документов в режиме таблицы.

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

Одновременно открывается лента Работа с таблицами | Поля (Table Tools | Fields), обеспечивающая определение полей таблицы с различными свойствами.

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

В конце этого списка имеется раздел Краткое руководство (Quick Start), в котором содержатся часто используемые поля, такие как адрес, телефон, категория. Некоторые из них выполняют добавление поля со списком значений.

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

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

Для создания и открытия следующей таблицы в аналогичном режиме предна-значена команда Таблица (Table), размещенная на вкладке ленты Создание (Create) в группе Таблицы (Tables).

В предлагаемой системой таблице определено ключевое поле с типом данных Счетчик (AutoNumber), и в нее в режиме таблицы можно добавлять новые поля, наделенные рядом характеристик. Столбец Щелкните для добавления (Click to Add) постоянно отображается в режиме таблицы, за исключением случая, когда в таблице не определен первичный ключ.

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

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

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

  • И у нас видео на эту тему:
  • В следующем уроке поговорим про типы данных MS Access.

Источник: https://accesshelp.ru/sozdanie-tablicy-bazy-dannyh/

Система управления базами данных SQLite. Изучаем язык запросов SQL и реляционные базы данных на примере библиотекой SQLite3. Курс для начинающих

Привет, посетитель сайта ZametkiNaPolyah.ru! Продолжаем изучать базы данных и наше знакомство с библиотекой SQLite3. В этой записи вы познакомитесь с механизмом создания таблиц в базе данных под управлением SQLite.

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

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

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

Создание таблиц в базах данных SQLite

Синтаксис создания таблиц в базе данных SQLite3

Давайте повторим команду CREATE TABLE и посмотрим, как можно создавать таблицы в базах данных SQLite. Сперва вспомним общий синтаксис создания таблиц в SQLite, он показан на рисунке ниже.

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

Синтаксис создания таблицы в базе данных SQLite

Обратите внимание: создавать таблицы в SQLite мы можем р азличным образом, но любое предложение для создания таблицы в SQLite начинается с CREATE TABLE.  Если мы хотим создать временную таблицу в базе данных SQLite, то необходимо использовать ключевое слово TEMP или TEMPORARY.

Хочу обратить ваше внимание на то, что имена таблиц должны быть уникальны во всей базе данных, поэтому, если вы создаете таблицу, но у вас есть подозрение, что таблица с таким именем существует, то можете использовать конструкцию IF NOT EXISTS, таким образом SQLite сначала проверит: существует ли таблица с таким именем, а уже затем создаст новую, если таблицы с таким именем нет. В базах данных SQLite вы можете создавать таблицы, используя так называемый квалификатор: полное имя таблицы. Для этого, перед именем таблицы вам следует указать имя базы данных, в которой вы хотите создать таблицу.

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

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

Если нам нужно создать таблицу на основе запроса SELECT, то для этого следует использовать ключевое слово AS, после которого идет команда SELECT.

Создания таблицы в базе данных SQLite без описания столбцов

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

CREATE TABLE table1 (a, b, c, d);

CREATE TABLE table1 (a, b, c, d);

Как вы видите, в данном случае мы создадим таблицу с именем table1, в которой четыре столбца: a, b, c, d. Для столбцов в данном случае не указан класс данных, а так же не указаны ограничения, которые нужны для поддержания целостности данных.

Создание таблицы в базе данных SQLite3 с описанием столбцов и ограничениями

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

CREATE TABLE table2 (

a INTEGER PRIMARY KEY NOT NULL,

b TEXT  UNIQUE NOT NULL,

c REAL NOT NULL

);

a INTEGER PRIMARY KEY NOT NULL,

В первом примере мы создали таблицу table2 со столбцами a, b, c. И задали для каждого столбца описание: указали тип данных и ограничения: NOT NULL и PRIMARY KEY. Обратите внимание на терминологию SQLite знать не знает про реляционную базу данных и о том, что такое ключ или ключевой атрибут.

Читайте также:  Форматирование символов и абзацев в ms word - студенческий портал

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

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

CREATE TABLE table3 (

a INTEGER NOT NULL,

b TEXT  UNIQUE NOT NULL,

c REAL NOT NULL,

PRIMARY KEY(a)

);

В данном случае мы объявили столбец «a» первичным ключом таблицы после описания столбцов, так тоже можно делать. Еще хочу обратить ваше внимание на то, что SQLite при создании таблицы неявно указывает сравнение данных для столбца. Если вам нужно явно указать SQLite как нужно сравнивать данные из столбца — используйте ключевое слово COLLATE.

Создание таблицы в базе данных SQLite с использованием квалификатора

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

CREATE TABLE world.table4 (

a INTEGER NOT NULL,

b TEXT UNIQUE NOT NULL,

c REAL NOT NULL,

PRIMARY KEY(a)

);

CREATE TABLE world.table4 (

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

Проверить и создать таблицу в базе данных, если она не существует

Когда вы создаете новые таблицы, то не всегда знаете структура базы данных, а, соответственно, не всегда знаете имена уже существующих таблиц, поэтому SQLite позволяет проверять имена таблиц на уникальность перед их созданием, для этого используется конструкция IF NOT EXISTS:

CREATE TABLE IF NOT EXISTS TABLE table5 (

a INTEGER NOT NULL,

b TEXT  UNIQUE NOT NULL,

c REAL NOT NULL,

PRIMARY KEY(a)

);

CREATE TABLE IF NOT EXISTS TABLE table5 (

Если таблицы с именем table5 в базе данных не будет, то SQLite создаст эту таблицу, если таблица table5 будет в базе данных, то таблица создана не будет.

Создание временных таблиц в базе данных SQLite3

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

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

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

CREATE TEMP TABLE table6 (

a INTEGER NOT NULL,

b TEXT  UNIQUE NOT NULL,

c REAL NOT NULL,

PRIMARY KEY(a)

);

CREATE TEMP TABLE table6 (

Создание временных таблиц в SQLite ничем не отличается от создания обычных таблиц за исключением ключевого слова TEMP. Обратите внимание: вы легко можете отличить временную таблицу от обычной, воспользовавшись командой SQLite .tables.

— Посмотрим временную таблицу

.tables

— Посмотрим временную таблицу

Временные таблицы в SQLite имеют пометку temp. Вместо ключевого слова TEMP для создания временной таблицы можно использовать ключевое слово TEMPORARY:

CREATE TEMPORARY TABLE table7 (

a INTEGER NOT NULL,

b TEXT  UNIQUE NOT NULL,

c REAL NOT NULL,

PRIMARY KEY(a)

);

CREATE TEMPORARY TABLE table7 (

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

— Посмотрим временную таблицу

.tables

— Посмотрим временную таблицу

Создание таблиц в базе данных SQLIte по запросу SELECT

Теперь посмотрим на второй вариант создания таблиц в SQLite, который заключается в использование ключевого слова AS и команды SELECT. Всё очень просто: сперва вы пишите CREATE TABLE, затем указываете имя таблицы, вместо имени можно использовать квалификатор, затем идет ключевое слово AS, после которого идет подзапрос SELECT, который, на самом деле, может быть сколь угодно длинным.

CREATE TABLE IF NOT EXISTS table8 AS

SELECT id, name, population FROM city LIMIT 15;

CREATE TABLE IF NOT EXISTS table8 ASSELECT id, name, population FROM city LIMIT 15;

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

А потом попробуйте воспользоваться командой .schema (на моем блоге есть публикация обо всех полезных командах шелла SQLite3), чтобы посмотреть каким запросом была создана таблица в SQLite.

Хочу обратить ваше внимание на то, что ключевое слово AS можно использовать не только для создания таблицы, но и для указания псевдонима имени столбца при создании таблицы, давайте это посмотрим:

CREATE TABLE IF NOT EXISTS table9 AS

SELECT id AS ‘Nomer’, name AS ‘Gorod’, population AS ‘naselenie’ FROM city LIMIT 15;

CREATE TABLE IF NOT EXISTS table9 ASSELECT id AS ‘Nomer’, name AS ‘Gorod’, population AS ‘naselenie’ FROM city LIMIT 15;

Затем выполним SELECT, чтобы убедиться в том, что имена столбцов будут отображаться, как Nomer, Gorod и naselenie.

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

Мы закончили рассмотрение создания таблиц в базах данных SQLite. Мне остается только добавить, что для некоторых примеров создания таблиц я использовал тестовую базу данных World.

Источник: https://zametkinapolyah.ru/zametki-o-mysql/chast-10-1-sozdanie-tablic-v-bazax-dannyx-sqlite.html

SQL запрос для создания таблицы базы данных — оператор CREATE TABLE

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

Вступление

Продолжим изучение SQL запросов к базе данных. Сегодня, один из простых SQL запросов, SQL запрос для создания таблицы базы данных. Работает запрос на основе оператора CREATE TABLE.

Создание таблицы базы данных

Есть оператор sql, который используется для создания таблиц баз данных. Оператор: CREATE TABLE.

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

  • Уникальное имя;
  • Столбцы (атрибуты);
  • Первичный ключ.
  • Строки (записи);

Для начала, мы создаем, только таблицу и не заполняем её данными.

По-хорошему, общий вид таблицы с уникальными именами строк и столбцов задается при создании концептуальной модели БД. Мы для примера создадим простенькую таблицу БД и обойдемся без концептуальной модели.

В этой статье создадим таблицу БД с покупателями. Покупатели взяты для примера. 

Чем идентифицируется покупатель? Решаем, что каждый покупатель идентифицируется следующими данными:

  • Имя;
  • Фамилия;
  • Логин;
  • Пароль;
  • Email;
  • телефон.

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

Чтобы создать таблицу базы данных, используем оператор sql CREATE TABLE.

Синтаксис оператора такой:

CREATE TABLE имя таблицы (столбец 1, тип столбца (пробел) параметр столбца (пробел), столбец 2, тип столбца (пробел) параметр столбца (пробел), столбец 3, тип столбца (пробел) параметр столбца (пробел), и т.д.)

В нашем варианте, имя таблицы: clients. Даем данным покупателей обозначения столбцов:

  • Имя: пусть будет client_customer;
  • Фамилия: client_subclient;
  • Логин: client_login;
  • Пароль: client_password;
  • eMail: client_mail;
  • Телефон: client_telefon.

Думаем, какой тип данных будет храниться в этих столбцах, и выбираем типы данных CHAR(длина поля постоянно) или VARCHAR(длинна поля переменное). В нашем случае подходит тип данных VARCHAR.

Особое внимание уделяем первичному ключу. Делаем первичным ключом id покупателя. В параметрах ключа задаем, что это первичный ключ, он не может быть нулём и что для следующей записи увеличивается на единицу. Последнее свойство называется автоинкремент. Смотрим подсказку в справочнике (ссылка выше) и получаем столбец с первичным ключом:

client_id integer not null auto_increment primary key

Пишем SQL запрос для создания таблицы базы данных

Суммируем все исходные данные и получаем такой SQL запрос:

/*Таблица пользователей clients*/
create table clients
(
/*client_id будет первичный ключ (обязательно целое число) с
автоинкрементом (+1), который никогда не будет равен нулю*/
client_id integer not null auto_increment primary key,
client_customer varchar(13), /*имя */
client_surclient varchar(22), /*фамилия */
client_login varchar(21), /*логин*/
client_passwd varchar(7), /*пароль*/
client_email varchar(44) /*email*/
client_telefon varchar(26) /*телефон*/
);

Примечание: SQL запрос для создания таблицы создаем в текстовом редакторе типа Notepad++. В скобках ограничиваем длину поля, может быть от 1 до 255.

Итоги статьи

  • В этой статье мы познакомились с первым оператором SQL языка CREATE TABLE
  • Создали SQL запрос для создания одной (первой) таблицы базы данных с первичным ключом.

©WebOnTo.ru

Другие статьи раздела: СУБД

Источник: https://webonto.ru/sql-zapros-dlya-sozdaniya-tablitsyi-bazyi-dannyih/

MySQL Учебник: установка, создание БД и таблицы, вставка и выбор записей

Это руководство MySQL поможет вам быстро разобраться с основами SQL. Это объясняет, как установить MySQL, создать базу данных, создать таблицу, вставлять записи в таблицу, и выбрать записи из таблицы.

1. Установка и настройка MySQL

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

  • Если вы устанавливаете на дистрибутиве на основе RedHat (например: CentOS), следовать этой статье: Установка MySQL на Ubuntu с помощью rpm
  • Вы можете также использовать yum groupinstall для установки группы базы данных MySQL.
  • Если вы хотите установить MySQL вместе с другими компонентами LAMP (Apache и PHP), следовать этой статье: Как установить или обновить LAMP

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

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

# mysql -u root -p
Enter password:
mysql>

После подключения, как MySQL пользователя root, выполните следующую команду “mysql> ” для создания базы данных.

Следующая команда создаст базу данных с именем “andreyexbase”.

mysql> create database andreyexbase

Используйте команду “show databases”, чтобы убедиться, что база данных была успешно создана.

mysql> show databases;
+———————+
| Database |
+———————+
| information_schema |
| mysql |
| andreyexbase |
+———————+
3 rows in set (0.00 sec)

3. Создать таблицу MySQL

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

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

mysql> use andreyexbase;
Database changed

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

create table worker (
id INT AUTO_INCREMENT PRIMARY KEY,
name varchar(20),
dept varchar(10),
salary int(10)
);

При копировании вставьте выше строки команды создания таблицы “mysql> ”, он будет отображать продолжение строки “->”, начиная со 2-й линии, что указывает на то, что команда еще не закончена. Конец команды SQL идентифицируется с помощью запятой.

mysql> create table worker (
-> id INT AUTO_INCREMENT PRIMARY KEY,
-> name varchar(20),
-> dept varchar(10),
-> salary int(10)
-> );
Query OK, 0 rows affected (0.00 sec)

Вы также можете использовать один из следующих типов данных.

  • dcode SMALLINT
  • MCode MEDIUMIN
  • project_start DATE
  • loggedon TIME

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

mysql> show tables;
+————————+
| Tables_in_andreyexbase |
+————————+
| worker |
+————————+
1 row in set (0.00 sec)

Для просмотра описания таблицы, выполните следующие действия.

mysql> desc worker;
+———+————-+——+——+———+—————-+
| Field | Type | Null | Key | Default | Extra |
+———+————-+——+——+———+—————-+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(20) | YES | | NULL | |
| dept | varchar(10) | YES | | NULL | |
| salary | int(10) | YES | | NULL | |
+———+————-+——+——+———+—————-+
4 rows in set (0.01 sec)

4. Вставить запись в таблицу

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

Читайте также:  Вальдорфская школа - что это такое и принципы обучения

insert into worker values(100,'Dima','Sales',5000);
insert into worker values(200,'AndreyEx','IT',5500);
insert into worker values(300,'Boris','IT',7000);
insert into worker values(400,'Anna','Marketing',9500);
insert into worker values(500,'Anton','IT',6000);

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

mysql> insert into worker(name,dept) values('Ritu', 'Accounting');
Query OK, 1 row affected (0.01 sec)

Примечание: Вы можете также загружать данные из текстового файла в базу данных MySQL с помощью команды mysqlimport.

5. Запрос записей из таблицы

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

mysql> select * from worker;
+——+———+————+———+
| id | name | dept | salary |
+——+———+————+———+
| 100 | Dima | Sales | 5000 |
| 200 | AndreyEx | IT | 5500 |
| 300 | Boris | IT | 7000 |
| 400 | Anna | Marketing | 9500 |
| 500 | Anton | IT | 6000 |
| 501 | Ritu | Accounting | NULL |
+——+———+————+———+
6 rows in set (0.00 sec)

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

mysql> select name, dept from worker;

Следующий оператор select имеет состояние, которое отображает записи о сотрудниках, которые принадлежат к техническому отделу и получают зарплату> = 7000.

mysql> select * from worker where dept = 'IT' and salary >= 6000;
+——+———+————+———+
| id | name | dept | salary |
+——+———+————+———+
| 300 | Boris | IT | 7000 |
| 500 | Anton | IT | 6000 |
+——+———+————+———+
2 rows in set (0.00 sec)

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

Источник: https://andreyex.ru/bazy-dannyx/baza-dannyx-mysql/mysql-uchebnik-ustanovka-sozdanie-bd-i-tablicy-vstavka-i-vybor-zapisej/

Создание базы данных SQL и таблиц базы данных на примере

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

Первая команда, которую мы будем применять для создании базы данных — это команда CREATE DATABASE. Её синтаксис следующий:

CREATE DATABASE ИМЯ_БАЗЫ ДАННЫХ

Далее для создания таблиц нашей базы данных будем многократно использовать команду CREATE TABLE. Её синтаксис следующий:

CREATE TABLE ИМЯ_ТАБЛИЦЫ (имя_первого_столбца тип данных, …, имя_последнего_столбца тип данных, первичный ключ, ограничения (не обязательно))

Так как наша база данных моделирует сеть аптек, то в ней есть такие сущности, как «Аптека» (таблица Pharmacy в нашем примере создания базы данных), «Препарат» (таблица Preparation в нашем примере создания базы данных), «Доступность (препаратов в аптеке)» (таблица Availability в нашем примере создания базы данных), «Клиент» (таблица Client в нашем примере создания базы данных) и другие, которые здесь подробно и разберём.

Разработке модели «сущность-связь» можно посвятить не одну статью, но если нас прежде всего интересуют команды языка SQL для создания базы данных и таблиц в ней, то условимся считать, что связи между сущностями уже нам понятны. На рисунке ниже приведено представление модели нашей базы данных с атрибутами сущностей (таблиц) и связями между таблицами.

Для увеличения рисунка можно нажать на него левой кнопкой мыши.

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

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

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

Можно также углубиться в теорию на уроке Реляционная модель данных.

Как уже говорилось, в разбираемом здесь примере создания базы данных использовался вариант языка SQL, который используется в системе управления базами данных (СУБД) DB2.

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

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

Теперь приступим к созданию команд. Первая наша команда SQL создаёт базу данных PHARMNETWORK:

  • Код SQL
  • CREATE DATABASE PHARMNETWORK
  • Описание таблицы PHARMACY (Аптека):
Имя поля Тип данных Описание
PH_ID smallint Идентификационный номер аптеки
Address varchar(40) Адрес аптеки

Пишем команду, которая создаёт таблицу PHARMACY (Аптека), значения первичного ключа PH_ID генерируются автоматически от 1 с шагом 1, вносится проверка на то, чтобы значения атрибута Address в этой таблице были уникальными:

Код SQL

CREATE TABLE PHARMACY(PH_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), Address varchar(40) NOT NULL, PRIMARY KEY(PH_ID), CONSTRAINT PH_UNIQ UNIQUE(Address))

Следует обратить внимание на то, что автоматическое генерирование первичного ключа с приращением обеспечено средствами, применяемыми в диалекте SQL для DB2:

Код SQL

PH_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1)

Средства автоматического генерирования первичного ключа с приращением (кратко это называется автоинкрементом) в разных диалектах SQL различаются. Так, в MySQL используется ключевое слово AUTO_INCREMENT и соответствующая часть запроса на создание таблицы выглядит следующим образом:

Код SQL

PH_ID int(4) NOT NULL AUTO_INCREMENT

В SQL Server механизм автоинктемента обеспечивается так:

Код SQL

PH_ID int IDENTITY(1, 1) PRIMARY KEY

Запись (1, 1) здесь означает, что значения первичного ключа должны создаваться начиная с 1 с приращением на 1. Итак, помните о том, что в зависимости от СУБД и диалекта SQL механизмы автоинкремента различаются, а далее для краткости будем приводить запросы на создание таблиц в соответствии с синтаксисом для DB2.

Описание таблицы GROUP (Группа препаратов):

Имя поля Тип данных Описание
GR_ID smallint Идентификационный номер группы препаратов
Name varchar(40) Название группы препаратов

Пишем команду, которая создаёт таблицу Group (Группа препаратов), значения первичного ключа GR_ID генерируются автоматически от 1 с шагом 1, проводится проверка уникальности наименования группы (для этого используется ключевое слово CONSTRAINT):

  1. Код SQL
  2. CREATE TABLE GROUP(GR_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), Name varchar(40) NOT NULL, PRIMARY KEY(GR_ID), CONSTRAINT GR_UNIQ UNIQUE(Name))
  3. Описание таблицы PREPARATION (Препарат):
Имя поля Тип данных Описание
PR_ID smallint Идентификационный номер препарата
GR_ID smallint Идентификационный номер группы препарата
Name varchar(40) Название препарата

Команда, которая создаёт таблицу PREPARATION, значения первичного ключа PR_ID генерируются автоматически от 1 с шагом 1, определяется, что значения внешнего ключа GR_ID (Группа препаратов) не могут принимать значение NULL, определена проверка уникальности значений атрибута Name:

Код SQL

CREATE TABLE PREPARATION(PR_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), Name varchar(40) NOT NULL, GR_ID int NOT NULL, PRIMARY KEY(PR_ID), constraint PR_UNIQ UNIQUE(Name))

Теперь самое время создать таблицу AVAILABILITY (Доступность или Наличие препарата в аптеке). Её описание:

Имя поля Тип данных Описание
A_ID smallint Идентификационный номер записи о доступности
PH_ID smallint Идентификационный номер аптеки
PR_ID smallint Идентификационный номер препарата
Quantity int Количество доступного препарата
DateStart varchar(20) Дата начала работы аптеки с данным препаратом
DateEnd varchar(20) Дата окончания работы аптеки с данным препаратом
Mart varchar(3) Выставлен ли препарат на витрину

Пишем команду, которая создаёт таблицу AVAILABILITY. Определяются даты начала (не может быть NULL) и окончания (по умолчанию NULL).

Код SQL

CREATE TABLE AVAILABILITY(A_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), PH_ID INT NOT NULL, PR_ID INT NOT NULL, DateStart varchar(20) NOT NULL, DateEnd varchar(20) DEFAULT NULL, QUANTITY INT NOT NULL, MART varchar(3) DEFAULT NULL, PRIMARY KEY(A_ID), CONSTRAINT AVA_UNIQ UNIQUE(PH_ID, PR_ID))

Создаём таблицу DEFICIT (Дефицит препарата в аптеке, то есть, неудовлетворённый запрос). Её описание:

Имя поля Тип данных Описание
D_ID smallint Идентификационный номер записи о дефиците
PH_ID smallint Идентификационный номер аптеки
PR_ID smallint Идентификационный номер препарата
Solution varchar(40) Решение проблемы дефицита
DateStart varchar(20) Дата появления проблемы
DateEnd varchar(20) Дата решения проблемы

Пишем команду, которая создаёт таблицу DEFICIT:

Код SQL

CREATE TABLE DEFICIT(D_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), PH_ID INT NOT NULL, PR_ID INT NOT NULL, Solution varchar(40) NOT NULL, DateStart varchar(20) NOT NULL, DateEnd varchar(20) DEFAULT NULL)

Осталось немного. Мы уже дошли до команды, которая создаёт таблицу Employee (Сотрудник). Её описание:

Имя поля Тип данных Описание
E_ID smallint Идентификационный номер сотрудника
PH_ID smallint Идентификационный номер аптеки
FName varchar(40) Имя сотрудника
LName varchar(40) Фамилия сотрудника
Post varchar(40) Должность

Пишем команду, которая создаёт таблицу Employee (Сотрудник), с первичным ключом, генерируемым по тем же правилам, что и первичные ключи предыдущих таблиц, в которых они существуют. Внешним ключом PH_ID Сотрудник связан с PHARMACY (Аптекой).:

Код SQL

CREATE TABLE EMPLOYEE(E_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), F_Name varchar(40) NOT NULL, L_Name varchar(40) NOT NULL, POST varchar(40) NOT NULL, PH_ID INT NOT NULL, PRIMARY KEY(E_ID))

Очередь дошла до создании таблицы CLIENT (Клиент). Её описание:

Имя поля Тип данных Описание
C_ID smallint Идентификационный номер клиента
FName varchar(40) Имя клиента
LName varchar(40) Фамилия клиента
DateReg varchar(20) Дата регистрации

Пишем команду, создающую таблицу CLIENT (Клиент), в отношении первичного ключа которого справедливо предыдущее описание.

Особенность этой таблицы в том, что её атрибуты F_Name и L_Name имеют по умолчанию значение NULL. Это связано с тем, что клиенты могут быть как зарегистрированными, так и незарегистрированными.

У последних значения имени и фамилии как раз и будут неопределёнными (то есть NULL):

Код SQL

CREATE TABLE CLIENT(C_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), FName varchar(40) DEFAULT NULL, LName varchar(40) DEFAULT NULL, DateReg varchar(20), PRIMARY KEY(C_ID))

Предпоследняя таблица в нашей базе данных — таблица BASKET (Корзина покупок). Её описание:

Имя поля Тип данных Описание
BS_ID smallint Идентификационный номер корзины покупок
E_ID smallint Идентификационный номер сотрудника, оформившего корзину
C_ID smallint Идентификационный номер клиента

Пишем команду, создающую таблицу BASKET (Корзина покупок), так же с уникальным и инкрементируемым первичным ключом и связанную внешним ключами C_ID и E_ID с Клиентом и Сотрудником соответственно:

Код SQL

CREATE TABLE BASKET(BS_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), C_ID INT NOT NULL, E_ID INT NOT NULL, PRIMARY KEY(BS_ID))

И, наконец, последняя таблица в нашей базе данных — таблица BUYING (покупка). Её описание:

Имя поля Тип данных Описание
B_ID smallint Идентификационный номер покупки
PH_ID smallint Идентификационный номер аптеки
PR_ID smallint Идентификационный номер препарата
BS_ID varchar(40) Идентификационный номер корзины покупок
Price varchar(20) Цена
Date varchar(20) Дата

Пишем команду, создающую таблицу BUYING (покупка), так же с уникальным и инкрементируемым первичным ключом и связанную внешними ключами BS_ID, PH_ID, PR_ID с Корзиной покупок, Аптекой и Препаратом соответственно:

Читайте также:  Красный цвет в психологии - студенческий портал

Код SQL

CREATE TABLE BUYING(B_ID smallint NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), BS_ID INT NOT NULL, PH_ID INT NOT NULL, PR_ID INT NOT NULL, DateB varchar(20) NOT NULL, Price Double NOT NULL, PRIMARY KEY(B_ID))

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

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

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

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

А именно: в условии добавления соответствующего препарата в таблицу BUYING (Покупка) пишется функция на языке программирования, на котором выполнено приложение, с запросом с ключевым словом UPDATE на замену значения количества этого препарата на единицу меньше в той же аптеке. И таблица BUYING, и таблица AVAILABILITY имеют внешний ключ PH_ID — идентификатор определённой аптеки.

На этом многогранная тема создания баз данных прерывается…

Поделиться с друзьями

Реляционные базы данных и язык SQL

Источник: https://function-x.ru/sql_sozdanie_bazy_dannyh.html

Базы данных. Учебное пособие

1. Введение в базы данных. Основные понятия и определения

2. Реляционные базы данных. Ограничения целостности

3. Принципы построения баз данных. Жизненный цикл баз данных

4. Архитектуры баз данных

5. Организация процессов обработки данных в БД. Технология создания приложения в среде Delphi

6. Технология оперативной обработки транзакции

7. Реляционный способ доступа к базе данных. Основные сведения о языке SQL

8. Построение приложений баз данных в архитектуре «клиент-сервер». SQL-сервер Interbase

9. Информационные хранилища. OLAP-технология

10. Перспективы развития БД и СУБД

1. Введение в базы данных. Основные понятия и определения

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

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

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

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

Основополагающими понятиями в концепции баз данных являются обобщенные категории «данные» и «модель данных».

Понятие «данные» в концепции баз данных — это набор конкретных значений, параметров, характеризующих объект, условие, ситуацию или любые другие факторы, Примеры данных: Петров Николай Степанович, $30 и т. д.

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

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

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

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

  • иерархическую
  • сетевую
  • реляционную
  • объектно-ориентированную

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

В сетевой БД данные организуются в виде графа. Недостатком сетевой структуры является жесткость структуры и сложность ее организации.

Реляционная БД получила свое название от английского термина relation (отношение). Была предложена в 70-м году сотрудником фирмы IBM Эдгаром Коддом.

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

Большинство современных БД для персональных компьютеров являются реляционными.

Объектно-ориентированные БД объединяют сетевую и реляционную модели и используются для создания крупных БД с данными сложной структуры.

Базы данных можно разделить на базы данных первого поколения: иерархические, сетевые; второго поколения: реляционные; третьего поколения: объектно-ориентированные, обектно-реляционные.

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

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

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

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

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

в обычной анкете не до конца формализованы и имеют переменную длину, поэтому при автоматизации этой задачи необходимы некоторые поправки.

Обычно бывает целесообразно фиксировать максимальное количество позиций в каждом разделе и тем самым выравнивать длину записей (у многих записей при этом могут возникать позиции с пустым заполнением).

Основной задачей, решаемой в документальных АИС, является поиск документов по их содержанию. Документальная система по заданию пользователя выдает необходимые ему документы (книги, статьи, законы, патенты, отчеты и т.д.). В задании могут указываться сведения об искомых документах: автор, наименование, время издания, издательство и т.д.

2. Реляционные базы данных. Ограничения целостности

Американский математик Э.Ф.Кодд (E.F.Codd) в 1970 впервые сформулировал основные понятия и ограничения реляционной модели. Цели создания реляционной модели формулировались следующим образом:

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

Коммерческие системы на основе реляционной модели данных начали появляться в конце 70-х – начале 80-х годов. Благодаря популярности реляционной модели многие нереляционные системы теперь обеспечиваются реляционным пользовательским интерфейсом, независимо от используемой базовой модели.

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

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

Отношение – это плоская таблица, состоящая из столбцов и строк.

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

Атрибут — это поименованный столбец отношения.

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

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

Например, информация об отделениях компании может быть представлена отношением Branch, включающим столбцы с атрибутами Вno (Номер отделения), Street (Улица), City (Город), Postcode (Почтовый индекс), Tel_ No (Номер телефона) и Fax_ No (Номер факса).

Аналогично, информация о работниках компании может быть представлена отношением Staff (Персонал), включающим столбцы с атрибутами Sno (Личный номер сотрудника), FName (Имя), LName (Фамилия), Address (Адрес), Tel_No (Номер телефона), Position (Должность), Sex (Пол), DOB (Дата рождения), Salary (Зарплата), INN (Личный номер социального страхования) и Вno (Номер отделения, в котором данный сотрудник работает). В табл. 1 и 2 показаны примеры отношений Branch и Staff. Каждый столбец содержит значения одного и того же атрибута, например столбец Вnо содержит только номера существующих отделений компании.

Элементами отношения являются кортежи, или строки, таблицы. Кортеж – это строка отношения. В отношении Branch каждая строка содержит 6 значений, по одному для каждого атрибута. Кортежи могут располагаться в любом порядке, при этом отношение будет оставаться тем же самым, а значит, и иметь тот же смысл.

Примеры отношений Branch и Staff.

Таблица 1. Отношение Branch

Bno City Postcode Street Tel_No Fax_No
23 Москва 111111 Победы 1231112 1231113
24 Ростов 3334546 Октябрьская 1334456 1334455
25 Самара 456009 Лесная 1213345 1213346

Таблица 2. Отношение Staff

Sno FName LName Adress Tel_No Position Sex DOB Salary INN Bno
234 Иван Иванов Москва Победы 14-24 121112 Менеджер м 01.01.67 500$ 441414 23
235 Марина Смирнова Москва Ленина 215-35 1417877 Менеджер ж

Источник: https://siblec.ru/informatika-i-vychislitelnaya-tekhnika/bazy-dannykh

Ссылка на основную публикацию