1 (изменено: hesher, 2018-06-13 20:12:47)

Тема: Привязка нескольких таблиц и дизйнер.

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

2

Re: Привязка нескольких таблиц и дизйнер.

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

3

Re: Привязка нескольких таблиц и дизйнер.

Hanut сказал:

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

1) Есть скрипт авторизации и логина(вход в программу), пользователь регистрируется, но данные не вносятся
(есть первая таблица: id_user, fio, login, password,
во второй таблице: id_elem, id_try, id_user, countcorrect, date)
и мне надо, чтобы id_user заносился в обе таблицы(я создал индекс во второй таблице на id_user и сделал первичным ключом в первой), но как только я привязываю обе таблицы через id_user, данные перестают заноситься.
2) В дизайнере нет этих связей, т.е. нет этих линий, из которых было бы понятно, что они связаны(нет кнопки "создать связь") с уникальными идентификаторами тоже не заносятся данные.

4

Re: Привязка нескольких таблиц и дизйнер.

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

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

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

5

Re: Привязка нескольких таблиц и дизйнер.

Hanut сказал:

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

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

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

Т.е. id тоже самому писать? Почему тогда без связки таблиц данные авторизации заносятся?

6 (изменено: Forgotten, 2019-12-12 08:07:04)

Re: Привязка нескольких таблиц и дизйнер.

Здравствуйте, как мне связать две таблицы? В моей версии phpMyAdmin 4.9.2 отсутствует кнопка "Связи". Делал базу данных по этому видео: https://www.youtube.com/watch?v=G7My9kB … mp;index=3 . При попытке связать две таблицы выскакивает следующая ошибка: https://d.radikal.ru/d37/1912/fa/b56096abd61f.jpg .

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

7

Re: Привязка нескольких таблиц и дизйнер.

В конфигурационном файле смотрите строку:

$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';

В БД phpmyadmin смотрите наличие таблицы pma__designer_settings.

8 (изменено: Forgotten, 2019-12-12 21:33:53)

Re: Привязка нескольких таблиц и дизйнер.

Это который config.inc.php ?

Вот содержимое этого моего файла:

<?php

/* Servers configuration */
$i = 0;
/* The 'cookie' auth_type uses AES algorithm to encrypt the password. If
 * at least one server configuration uses 'cookie' auth_type, enter here a
 * pass phrase that will be used by AES. The minimum length is 32 characters
 * The maximum length seems to be 46 characters. */
$cfg['blowfish_secret'] = 'h]C+{nqW$omNoTIkCwC$%z-LTcy%p6_j';

//Checking Active DBMS Servers
$wampConf = @parse_ini_file('../../wampmanager.conf');
//Check if MySQL and MariaDB with MariaDB on default port
$mariaFirst = ($wampConf['SupportMySQL'] == 'on' && $wampConf['SupportMariaDB'] == 'on' && $wampConf['mariaPortUsed'] == $wampConf['mysqlDefaultPort']) ? true : false;
if($wampConf['SupportMySQL'] == 'on') {
/* Server: localhost [1] */
    $i++;
    if($mariaFirst) $i++;
    $cfg['Servers'][$i]['verbose'] = 'MySQL';
    $cfg['Servers'][$i]['host'] = '127.0.0.1';
    $cfg['Servers'][$i]['port'] = $wampConf['mysqlPortUsed'];
    $cfg['Servers'][$i]['extension'] = 'mysqli';
    $cfg['Servers'][$i]['auth_type'] = 'cookie';
    $cfg['Servers'][$i]['user'] = '';
    $cfg['Servers'][$i]['password'] = '';

    // Hidden databases in PhpMyAdmin left panel
    //$cfg['Servers'][$i]['hide_db'] = '(information_schema|mysql|performance_schema|sys)';

    // Allow connection without password
    $cfg['Servers'][$i]['AllowNoPassword'] = true;
}
/* Server: localhost [2] */
if($wampConf['SupportMariaDB'] =='on') {
    $i++;
    if($mariaFirst) $i -= 2;
    $cfg['Servers'][$i]['verbose'] = 'MariaDB';
    $cfg['Servers'][$i]['host'] = '127.0.0.1';
    $cfg['Servers'][$i]['port'] = $wampConf['mariaPortUsed'];
    $cfg['Servers'][$i]['extension'] = 'mysqli';
    $cfg['Servers'][$i]['auth_type'] = 'cookie';
    $cfg['Servers'][$i]['user'] = '';
    $cfg['Servers'][$i]['password'] = '';

    // Hidden databases in PhpMyAdmin left panel
    //$cfg['Servers'][$i]['hide_db'] = '(information_schema|mysql|performance_schema|sys)';
    // Allow connection without password
    $cfg['Servers'][$i]['AllowNoPassword'] = true;
}

// Suppress Warning about pmadb tables
$cfg['PmaNoRelation_DisableWarning'] = true;

// To have PRIMARY & INDEX in table structure export
$cfg['Export']['sql_drop_table'] = true;
$cfg['Export']['sql_if_not_exists'] = true;

$cfg['MySQLManualBase'] = 'http://dev.mysql.com/doc/refman/5.7/en/';
/* End of servers configuration */

?>

9

Re: Привязка нескольких таблиц и дизйнер.

Так что?

10

Re: Привязка нескольких таблиц и дизйнер.

Настройте таблицу расширений.
https://php-myadmin.ru/learning/instrument-pma.html

11

Re: Привязка нескольких таблиц и дизйнер.

Сделал всё как там указано. Как я полагаю, заходить теперь надо от пользователя pma? Зашёл, всё та же проблема - функция связи отключена при попытке связать две таблицы. У меня уже руки опустились. Может как нибудь можно переустановить phpmyadmin с сервера WampServer на нормальную версию, потому что манал я всё это, всю голову уже сломал! Вот зачем надо было даунам разработчикам этого сервера снимать функцию связи таблиц????

12

Re: Привязка нескольких таблиц и дизйнер.

Заходить надо, как обычно, от root. Если доступ к серверу есть, то поставьте свою копию phpMyAdmin на сайт в отдельный закрытый каталог.