Важная информация
Показано с 1 по 2 из 2

Тема: Ошибка синтаксиса в предложении CONSTRAINT

  1. #1 Ошибка синтаксиса в предложении CONSTRAINT 
    Новичок
    Регистрация
    29.11.2017
    Сообщений
    10
    Сказал(а) спасибо
    10
    Поблагодарили 1 раз в 1 сообщении
    Когда копирую из учебника,
    первый запрос:
    MySQL Code:
    1. [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] Студент (
    2. Код_студента AUTOINCREMENT [Ссылки могут видеть только зарегистрированные пользователи. ],
    3. Номер_зачетной_книжки [Ссылки могут видеть только зарегистрированные пользователи. ],
    4. ФИО_студента [Ссылки могут видеть только зарегистрированные пользователи. ] (50),
    5. Место_рождения [Ссылки могут видеть только зарегистрированные пользователи. ] (50)
    6. );


    второй запрос:
    MySQL Code:
    1. [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] Задолженность_за_обучение (
    2. Код_задолженности AUTOINCREMENT [Ссылки могут видеть только зарегистрированные пользователи. ],
    3. Код_студента [Ссылки могут видеть только зарегистрированные пользователи. ],
    4. Сумма_задолженности MONEY,
    5. [Ссылки могут видеть только зарегистрированные пользователи. ] f1_i [Ссылки могут видеть только зарегистрированные пользователи. ] (Код_студента)
    6. [Ссылки могут видеть только зарегистрированные пользователи. ] Студент (Код_студента)
    7. [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ]);

    , оба запроса нормально выполняются - создаются две связанные таблицы.

    Когда подставляю свои названия, вот так,
    первый запрос:
    MySQL Code:
    1. [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] Маршруты (
    2. Код_маршрута AUTOINCREMENT [Ссылки могут видеть только зарегистрированные пользователи. ],
    3. Дата_вылета [Ссылки могут видеть только зарегистрированные пользователи. ],
    4. Дата_обратного_вылета [Ссылки могут видеть только зарегистрированные пользователи. ],
    5. Страна [Ссылки могут видеть только зарегистрированные пользователи. ] (50),
    6. Город [Ссылки могут видеть только зарегистрированные пользователи. ] (50)
    7. );


    второй запрос:
    MySQL Code:
    1. [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] Пилоты (
    2. Фамилия AUTOINCREMENT [Ссылки могут видеть только зарегистрированные пользователи. ],
    3. Стаж [Ссылки могут видеть только зарегистрированные пользователи. ],
    4. Зарплата MONEY,
    5. [Ссылки могут видеть только зарегистрированные пользователи. ] f1_i [Ссылки могут видеть только зарегистрированные пользователи. ] (Код_маршрута)
    6. [Ссылки могут видеть только зарегистрированные пользователи. ] Маршруты (Код_маршрута)
    7. [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ]
    8. );

    , таблица по первому запросу создаётся, но, при попытке выполнить второй, появляется ошибка "Недопустимое описание поля 'Код_маршрута' при определении индекса или связи". Помогите, пожалуйста, разобраться, в чём проблема.
    Последний раз редактировалось Serpent; 15.01.2019 в 13:32.
    Ответить с цитированием  
     

  2. Пользователь сказал cпасибо:

    Free Admin (23.01.2019)

  3. #2  
    Администратор Аватар для rovico
    Регистрация
    17.04.2014
    Адрес
    Ярославль
    Сообщений
    245
    Сказал(а) спасибо
    17
    Поблагодарили 287 раз(а) в 162 сообщениях
    Записей в блоге
    2
    UPDATED

    В таблице "Пилоты" отсутствуент поле Код_маршрута, к которому идёт попытка сделать связь.

    Ещё заметил, что у обоих констрейнтов одинаковое название f1_i. Это не правильно. В контексте написанного вами будет лучше fk_Задолженность_за_обучение_Код_студента и fk_Пилоты_Код_маршрута

    Также не рекомендую использовать русские имена в названиях таблиц и связей. Пользуйтесь translate.google.com и reverso context для перевода названий на английский (Заодно английский подтянете)
    Ответить с цитированием  
     

  4. 3 пользователя(ей) сказали cпасибо:

    >Quiet Snow< (15.01.2019), Free Admin (23.01.2019), Serpent (15.01.2019)

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ошибка при перестановке ОС
    от AntonNoob в разделе Операционные системы
    Ответов: 1
    Последнее сообщение: 02.01.2017, 08:17
  2. ошибка в nginx
    от Наталья Григорьева в разделе Сервера
    Ответов: 1
    Последнее сообщение: 26.11.2016, 23:48
  3. Подсветка синтаксиса для СТЕПЛЕРа на форуме
    от Konstantin Shcherba в разделе Степлер
    Ответов: 6
    Последнее сообщение: 21.01.2013, 11:16
  4. Ответов: 0
    Последнее сообщение: 12.03.2012, 17:02
  5. Ошибка в дебаге.
    от fizuch в разделе Assembler
    Ответов: 16
    Последнее сообщение: 20.01.2011, 02:06
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •