Связь один ко многим в phpmyadmin

Связь один ко многим в phpmyadmin

технические науки

  • Соломатова Евгения Ивановна , ассистент
  • Алтайская государственная педагогическая академия
  • Похожие материалы

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

    В настоящее время широкое распространение получили информационные системы, основанные на технологиях баз данных, называемая «система управления баз данных» (СУБД). Зародившаяся около четырех десятилетий назад, данная технология оказалась весьма плодотворной. Современное СУБД основано на реляционной модели данных, для взаимодействия с реляционной базой данных, в середине 70-х годов фирмой IBM разработан язык структурированных запросов SQL, ставший впоследствии стандартом при работе с базами данных.

    В нашем информационном времени существует множество программ для работы с базами данных, как например: InterBase, FilePro, mSQL, MS Access, Oracle, MySQL и т.д..

    Мы же, рассмотрим, как можно создать и работать с базой данных в локальном доступе, используя возможности PHP и MySQL, для этого нам понадобиться «джентльменский набор» Web-разработчика Denwer.

    Denwer – это локальный сервер, в котором уже имеется: Apache, PHP, MySQL, Perl и многое другое. Так же он, прост в установке, что немало важно на первом этапе работы с web-программированием, создавая первую базу в PHP.

    Мы рассмотрим с вами как создавать базу данных, на примере одной таблицы и работать с ней, использую PHP и HTML-формы.

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

    Например, мы создадим маленькую базу данных «Компьютерные технологии (komp_texn)» с одной таблицей «Продукт (product)».

    product / продукт

    product_ID / первичный ключ

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

    С начало нужно запустить Denwer, предполагается, что вы его уже установили, нажав двойным щелчком мыши по ярлыку на рабочем столе «StartDenwer». После чего запустите любой браузер, и в адресной строке введите http://localhost, и в данной странице переедите по http://localhost/Tools/phpMyAdmin — «Проверка MySQL и phpMyAdmin».

    В появившейся странице, в верхнем меню выберите вкладку «Базы данных», введите имя создаваемой базы – «Komp_texnika» (см. рис.1).

    После чего переходим к созданию сущности/таблиц, базы данных, описывая ее название и сколько выделяете характеристик, для этой сущности – «Product», 4 — столбца (см. рис.2).

    Следующим действием, будет описание характеристик/свойств, и указание их типов в соответствующих диапазонах (см. рис.3).

    Теперь в нашей базе данных имеется пустая таблица Product, которую нужно заполнить, для этого в верхнем меню выберите вкладку «Вставить» и перед вами откроется страница для заполнения данных полей (см. рис.4).

    Хочу обратить ваше внимание, на то что, в таблицу можно вставить с начало только две записи. Для добавления еще значения, нужно в нижней части странице в выпадающем списке выбрать пункт «Добавить новую запись» и нажать ОК.

    Заполнив информацией базу данных (см. рис.5), займемся работой с базой данных, используя скриптом PHP.

    С начало создадим форму на HTML, для заполнения информацией нашей таблицы, то есть создадим непосредственную связь между таблицей в базе данных и формой (см. таблицу 1.).

    Теперь отразим имеющуюся информацию в базе данных на web-странице, в виде массива данных и добавив некоторые возможности в работе с данными. То есть добавление, редактирование и удаление данных. Чтобы реализовать эти действия, необходимо создать еще три web-страницы для: создания новых данных – new.php (см. таблицу 2.), редактирование данных – edit.php (см. таблицу 3.) и удаления данных из таблицы в базе данных – delete.php (см. таблицу 4.).

    Объединив все эти действия в одну web-страницу под названием index2.php, мы можем свободно работать с базой данных в привычном, понятном для пользователя виде (см. таблицу 5.).

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

    Список литературы

    1. Островский, С.Л. Лекция 6. Свои журналы ближе к телу [Текст]/ С.Л. Островский // Информатика. – 2008.-№22.-с.2-13.
    2. Яковлева, Тамара Что такое Denwer (денвер) и как его утановить? [Электронный ресурс]/Т.Яковлева//URL: http://blog.sistemainternetzarabotka.ru/chto-takoe-denwerdenver-i-kak-ego-ustanovit.
    3. Моисеенко Сергей Интерактивный учебник поSQL [Электронный ресурс]/С.Моисеевнко // URL: http://www.sql-tutorial.ru/.
    4. PHP и MySQL.Совместная работа [Электронный ресурс]//URL: http://www.softtime.ru/bookphp/gl12_1.php.
    5. Электронное периодическое издание зарегистрировано в Федеральной службе по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор), свидетельство о регистрации СМИ — ЭЛ № ФС77-41429 от 23.07.2010 г.

      Соучредители СМИ: Долганов А.А., Майоров Е.В.

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

      Для начала создайте базу данных и войдите с полученными данными пользователя в phpMyAdmin.

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


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

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

      Решение

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

      То, что вам не хватает в вашем примере и которое видно на скриншоте, это длина целочисленного значения. Они оба должны иметь одинаковую длину (и подписывать …), поэтому int(5) а также int(11) не совместимы

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

      Другие решения

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

      Итак, в вашем первом примере целые числа имеют разные размеры (int (5) и int (11), поэтому MySql не может создавать требуемые ограничения, и вы не можете включить каскадное удаление или обновление.

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

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

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