Operation failed there was an error while applying the sql script to the database

Ошибка 1452 при заполнение таблицы БД имеющей связь многие к одному Знатоки, помогите пожалуйста разобраться.Мне нужно создать БД в СУБД MySQL имеющую связь многие к одному. Но к сожалению вылетает ошибка:«ERROR 1452: Cannot add or update a child row: a foreign key constraint fails». Данные в родительских таблицах есть, ввёл соответствующие данные. Так же […]

Содержание

  1. Ошибка 1452 при заполнение таблицы БД имеющей связь многие к одному
  2. MYSQL error
  3. Русские Блоги
  4. mysql добавляет ошибку внешнего ключа ОШИБКА 1826: повторяющееся имя ограничения внешнего ключа ‘idXXXX’
  5. Интеллектуальная рекомендация
  6. Реализация оценки приложения iOS
  7. JS функциональное программирование (е)
  8. PWN_JarvisOJ_Level1
  9. Установка и развертывание Kubernetes
  10. На стороне многопроцессорного сервера — (2) *
  11. Вам также может понравиться
  12. C#Личные заметки
  13. [Springcould] Код сервисного шлюза (Zuul)
  14. Решите проблему, что координаты и значения данных с несколькими скидками для echarts не совпадают
  15. Список () и кортеж () Методы в Python

Ошибка 1452 при заполнение таблицы БД имеющей связь многие к одному

Знатоки, помогите пожалуйста разобраться.
Мне нужно создать БД в СУБД MySQL имеющую связь многие к одному. Но к сожалению вылетает ошибка:
«ERROR 1452: Cannot add or update a child row: a foreign key constraint fails». Данные в родительских таблицах есть, ввёл соответствующие данные. Так же стоит параметр на всех таблицах: InnoDB.
Вот код для примера:

CREATE TABLE `test`.`first` (
`id_first` INT NOT NULL COMMENT »,
`firstcol` VARCHAR(45) NOT NULL COMMENT »,
PRIMARY KEY (`id_first`) COMMENT »);

CREATE TABLE `test`.`second` (
`id_second` INT NOT NULL COMMENT »,
`secondcol` VARCHAR(45) NOT NULL COMMENT »,
PRIMARY KEY (`id_second`) COMMENT »);

CREATE TABLE `test`.`third` (
`id_third` INT NOT NULL COMMENT »,
`id_num` INT NOT NULL COMMENT »,
PRIMARY KEY (`id_third`) COMMENT »,
INDEX `fk_id_enum_1_idx` (`id_num` ASC) COMMENT »,
CONSTRAINT `fk_id_enum_1`
FOREIGN KEY (`id_num`)
REFERENCES `test`.`first` (`id_first`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_id_enum_2`
FOREIGN KEY (`id_num`)
REFERENCES `test`.`second` (`id_second`)
ON DELETE NO ACTION
ON UPDATE NO ACTION);

INSERT INTO `test`.`first` (`id_first`, `firstcol`) VALUES (11, ‘first’);

INSERT INTO `test`.`second` (`id_second`, `secondcol`) VALUES (22, ‘second’);

INSERT INTO `test`.`third` (`id_third`, `id_num`) VALUES (33, 11);

При заполнении третьей таблицы third, её я заполнял в последнюю очередь вылетела ошибка:

Executing:
INSERT INTO `test`.`third` (`id_third`, `id_num`) VALUES (33, 11);
Operation failed: There was an error while applying the SQL script to the database.
ERROR 1452: 1452: Cannot add or update a child row: a foreign key constraint fails (`test`.`third`, CONSTRAINT `fk_id_enum_2` FOREIGN KEY (`id_num`) REFERENCES `second` (`id_second`) ON DELETE NO ACTION ON UPDATE NO ACTION)
SQL Statement:
INSERT INTO `test`.`third` (`id_third`, `id_num`) VALUES (33, 11)

CONSTRAINT `fk_id_enum_1`
FOREIGN KEY (`id_num`)
REFERENCES `test`.`first` (`id_first`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_id_enum_2`
FOREIGN KEY (`id_num`)
REFERENCES `test`.`second` (`id_second`)
ON DELETE NO ACTION
ON UPDATE NO ACTION);

Источник

MYSQL error

  • I am getting error when creating the table in MYSQL. Below is my code:

    CREATE TABLE `jj`.`register` (
    `id` INT NOT NULL,
    PRIMARY KEY (`id`)
    `fname` varchar(25) default NULL,
    `lname` varchar(25) default NULL,
    `cname` varchar(10) default NULL,
    `addno` varchar(10) default NULL,
    `dir` varchar(25) default NULL,
    `street` varchar(50) default NULL,
    `type` varchar(10) default NULL,
    `aptno` varchar(15) default NULL,
    `city` varchar(15) default NULL,
    `state` varchar(2) default NULL,
    `zip` varchar(5) default NULL,
    );

    I would like to know what is wrong in the SQL statement?

  • Ron McLeod wrote: Was there an error message, or did it just silently fail?

    This is the error msg below:

    Operation failed: There was an error while applying the SQL script to the database.
    Executing:
    CREATE TABLE `jj`.`register` (
    `id` INT NOT NULL,
    PRIMARY KEY (`id`)
    `fname` varchar(25) default NULL,
    `lname` varchar(25) default NULL,
    `cname` varchar(10) default NULL,
    `addno` varchar(10) default NULL,
    `dir` varchar(25) default NULL,
    `street` varchar(50) default NULL,
    `type` varchar(10) default NULL,
    `aptno` varchar(15) default NULL,
    `city` varchar(15) default NULL,
    `state` varchar(2) default NULL,
    `zip` varchar(5) default NULL,
    );

    ERROR 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘`fname` varchar(25) default NULL,
    `lname` varchar(25) default NULL,
    `cname` varc’ at line 4
    SQL Statement:
    CREATE TABLE `jj`.`register` (
    `id` INT NOT NULL,
    PRIMARY KEY (`id`)
    `fname` varchar(25) default NULL,
    `lname` varchar(25) default NULL,
    `cname` varchar(10) default NULL,
    `addno` varchar(10) default NULL,
    `dir` varchar(25) default NULL,
    `street` varchar(50) default NULL,
    `type` varchar(10) default NULL,
    `aptno` varchar(15) default NULL,
    `city` varchar(15) default NULL,
    `state` varchar(2) default NULL,
    `zip` varchar(5) default NULL,
    )

    Источник

    Русские Блоги

    mysql добавляет ошибку внешнего ключа ОШИБКА 1826: повторяющееся имя ограничения внешнего ключа ‘idXXXX’

    1826 г. — Нить не отменялась. …Вот этот. .
    Причина: я уже добавлял индекс внешнего ключа с именем idmanagetype раньше. Если он будет повторяться, будет сообщено об ошибке. Я добавил 1 после имени и успешно.

    Интеллектуальная рекомендация

    Реализация оценки приложения iOS

    Есть два способа получить оценку приложения: перейти в App Store для оценки и оценка в приложении. 1. Перейдите в App Store, чтобы оценить ps: appid можно запросить в iTunes Connect 2. Встроенная оцен.

    JS функциональное программирование (е)

    Давайте рассмотрим простой пример, чтобы проиллюстрировать, как используется Reduce. Первый параметр Reduce — это то, что мы принимаем массив arrayOfNums, а второй параметр — функцию. Эта функция прин.

    PWN_JarvisOJ_Level1

    Nc первый Затем мы смотрим на декомпиляцию ida Перед «Hello, World! N» есть уязвимая_функция, проверьте эту функцию после ввода Видно, что только что появившийся странный адрес является пе.

    Установка и развертывание Kubernetes

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

    На стороне многопроцессорного сервера — (2) *

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

    Вам также может понравиться

    C#Личные заметки

    1. Метод расширения: добавьте статический перед именем класса, добавьте это перед параметра метода, например: расширить класс строки public static class string < Public static .

    [Springcould] Код сервисного шлюза (Zuul)

    1. Подготовка Проект в предыдущем учебном пособии хорошо построен [Springcould] открытие фактического боя [Springcould] Регистрация и обнаружение сервера Eureka Eureka [Springcould] Служба Производите.

    Решите проблему, что координаты и значения данных с несколькими скидками для echarts не совпадают

    При наличии нескольких дисконтированных данных echarts может сконфигурировать значение стека для использования суммированного значения или одного значения.

    Список () и кортеж () Методы в Python

    Многие люди будут думать о следующих способах генерировать список: Будет построить такой [«A», «B», «C», «D»] на самом деле ошибка Yuan Group также тако.

    Источник

    This article covers some common scenarios customers may run into using ClearDB with Microsoft Azure. For reference, here is a link to the ClearDB FAQ: https://www.cleardb.com/developers/help/faq As listed on the ClearDB FAQ, there are some general guidelines for using ClearDB. These guidelines include limitations on:

    • Maximum Database Connections
    • Maximum Database Size
    • Maximum SELECT Query Execution Time

    * Maximum amounts vary depending on your subscription plan.


    Error Message

    Error establishing a database connection (displayed on web site)

    PHP Warning: mysqli_real_connect(): (HY000/1226): User ‘abcdefghijk79’ has exceeded the ‘max_user_connections’ resource (current value: 4) in D:homesitewwwrootwp-includeswp-db.php on line 1454 (displayed in php_errors.log or WordPress debug.log)

    Source

    Web site, php_errors.log or debug.log

    Solution

    If you see this error in your debug.log or php_errors.log, then your application is exceeding the number of connections. If you’re hosting on ClearDB, please verify that number of connections available in your service plan.


    Error Message

    The management site for the database isn’t available right now. Please try again later.

    Source

    Microsoft Azure Dashboard > Linked Resources > Database Name

    Example

    Solution

    The link between Azure and ClearDB may have been broken or was never linked to begin with. Email support@cleardb.com and provide the Subscription ID located within the Azure Dashboard (lower-right corner).


    Error Message

    Operation failed: There was an error while applying the SQL script to the database.

    ERROR 1142: 1142: UPDATE command denied to user ‘name@ip’ for table ‘table_name’.

    Source

    MySQL Client/ DB Server Response in Application Code

    Example

    Solution

    There are multiple reasons this may occur, but a common one is due to the subscription quota being exceeded. See the question below “How do I check the current size of my MySQL Database on ClearDB?”

    If you have in-fact gone over your limit, please upgrade or read tips below on how to reduce your disk usage.


    Error Message

    Error Code: 1142. INSERT command denied to user ‘name@ip’ for table ‘table_name’.

    Source

    MySQL Client/ DB Server Response in Application Code

    Example

    Solution

    This may also point to the subscription quota being exceeded. Read below on how to check your current size on the MySQL database.

    If you have in-fact gone over your limit, please upgrade or read tips below on how to reduce your disk usage.


    How do I check the current size of my MySQL database on ClearDB? There are multiple options to check your current size. One solution is through the Azure Portal and the other is to run a query on your database instance:

    1) Using Azure Portal

    2) Using a MySQL Client, run a query on your ClearDB Database

       SELECT
              table_schema "Data Base Name",
              sum( data_length + index_length ) / 1024 / 1024 "Data Base Size in MB"
       FROM
              information_schema.TABLES
       GROUP BY
              table_schema;
    

    My ClearDB MySQL Database quota is exceeded, now what? The simplest solution is to upgrade to the recommended subscription on ClearDB, especially if you’re on the Mercury Tier. If you are still developing your app and want to remain on the free, Mercury Tier, then you will need to get rid of extra data. Use the following query to find which tables are taking up space:

       SELECT
              table_name AS "Table",
              round(((data_length + index_length) / 1024 / 1024), 2) MB
       FROM
              information_schema.TABLES
       WHERE
              table_schema = "**<SCHEMA/DATABASE NAME HERE>"**
       ORDER BY
              MB desc;
    

    Where do I find my MySQL connection details?

    Through the Azure Dashboard, click on “View Connection Strings”

    This will pop-up a window with the following connection information:

    • Database (AKA Schema)
    • Data Source (Host Name)
    • UserID
    • Password

    How do I connect to my MySQL Database on ClearDB?

    1) Use a MySQL Client.

    2) Use the PHP My Admin site extension

    Step 1. Go to your website with the following URL format:   http://<sitename>.scm.azurewebsites.net

    Step 2. Click “Site Extension”

    Step 3. Select “Gallery”

    Step 4. Find phpMyAdmin and click the plus button. Once installed, launch the extension by clicking the play button.

    Iget this error when I apply:
    Operation failed: There was an error while applying the SQL script to the database.
    ERROR 1064: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘FUNCTION `fn_number2words`(_Number double(18,2))
    RETURNS varchar(8000)
    ‘ at line 1

    —————————————————————————-

    This is the Function

    FUNCTION `fn_number2words`(_Number double(18,2))

    RETURNS varchar(8000)

    BEGIN

    DECLARE _inputNumber VARCHAR(38);

    DECLARE _outputString VARCHAR(8000);

    DECLARE _length INT;

    DECLARE _counter INT;

    DECLARE _loops INT DEFAULT 0;

    DECLARE _position INT;

    DECLARE _chunk CHAR(3); — for chunks of 3 numbers

    DECLARE _tensones CHAR(2);

    DECLARE _hundreds CHAR(1);

    DECLARE _tens CHAR(1);

    DECLARE _ones CHAR(1);

    DECLARE _cents varchar(50);

    DECLARE _numtmp1 varchar(50);

    DECLARE _numtmp2 varchar(50);

    DECLARE _numtmp3 varchar(50);

    IF _Number = 0 THEN

    SET _outputString = ‘Zero’;

    ELSE

    SET _cents = REPLACE(CAST((_Number % 1)*100 as char), ‘.00’, »);

    — initialize the variables

    SELECT REPLACE(CAST((_Number — (_Number % 1)) as char), ‘.00’, »),

    »,
    1

    INTO _inputNumber, _outputString, _counter;

    IF MOD(LENGTH(_inputNumber), 3) = 1 THEN

    SET _inputNumber = CONCAT(’00’, _inputNumber);

    ELSEIF MOD(LENGTH(_inputNumber), 3) = 2 THEN

    SET _inputNumber = CONCAT(‘0’, _inputNumber);

    END IF;

    SELECT LENGTH(_inputNumber),
    (LENGTH(_inputNumber)/3),
    LENGTH(_inputNumber)/3

    INTO _length, _position, _loops;

    WHILE _counter <= _loops DO

    SET _chunk = SUBSTR(_inputNumber, ((_position-1)*3)+1, 3);

    IF _chunk <> ‘000’ THEN

    SELECT

    SUBSTR(_chunk, 2, 2), SUBSTR(_chunk, 1, 1), SUBSTR(_chunk, 2, 1), SUBSTR(_chunk, 3, 1)

    INTO

    _tensones,

    _hundreds,

    _tens,

    _ones;

    /*SELECT _inputNumber, _chunk, _tensones, _hundreds, _tens, _ones, _counter, _position, _loops, CAST(_tensones as
    UNSIGNED INT);*/

    IF CAST(_tensones as UNSIGNED) <= 20 OR _ones=’0′ THEN

    SELECT word INTO _numtmp1 FROM tbl_numbers WHERE number = _tensones;

    SELECT CASE _counter

    WHEN 1 THEN » — No name

    WHEN 2 THEN ‘ thousand ‘ WHEN 3 THEN ‘ million ‘

    WHEN 4 THEN ‘ billion ‘ WHEN 5 THEN ‘ trillion ‘

    WHEN 6 THEN ‘ quadrillion ‘ WHEN 7 THEN ‘ quintillion ‘

    WHEN 8 THEN ‘ sextillion ‘ WHEN 9 THEN ‘ septillion ‘

    WHEN 10 THEN ‘ octillion ‘ WHEN 11 THEN ‘ nonillion ‘

    WHEN 12 THEN ‘ decillion ‘ WHEN 13 THEN ‘ undecillion ‘

    ELSE » END

    INTO _numtmp2;

    SET _outputString = CONCAT(_numtmp1, _numtmp2, _outputString);

    ELSE

    SELECT word INTO _numtmp1 FROM tbl_numbers WHERE number = CONCAT(_tens,’0′);

    SELECT word INTO _numtmp2 FROM tbl_numbers WHERE number = CONCAT(‘0’,_ones);

    SELECT CASE _counter WHEN 1 THEN » — No name

    WHEN 2 THEN ‘ thousand ‘ WHEN 3 THEN ‘ million ‘

    WHEN 4 THEN ‘ billion ‘ WHEN 5 THEN ‘ trillion ‘

    WHEN 6 THEN ‘ quadrillion ‘ WHEN 7 THEN ‘ quintillion ‘

    WHEN 8 THEN ‘ sextillion ‘ WHEN 9 THEN ‘ septillion ‘

    WHEN 10 THEN ‘ octillion ‘ WHEN 11 THEN ‘ nonillion ‘

    WHEN 12 THEN ‘ decillion ‘ WHEN 13 THEN ‘ undecillion ‘

    ELSE » END

    INTO _numtmp3;

    SET _outputString = CONCAT(‘ ‘,_numtmp1, ‘-‘,_numtmp2, _numtmp3, _outputString);

    END IF;

    — now get the hundreds

    IF _hundreds <> ‘0’ THEN

    SELECT word INTO _numtmp1 FROM tbl_numbers WHERE number = CONCAT(‘0’,_hundreds);

    SET _outputString = CONCAT(_numtmp1, ‘ hundred ‘, _outputString);

    END IF;

    END IF;

    /* seed variables */

    SELECT (_counter+1), (_position-1)

    INTO _counter, _position;

    END WHILE;

    END IF;

    IF RTRIM(LTRIM(_outputString)) = » THEN

    SET _outputString = »;

    ELSE

    SET _outputString = CONCAT(_outputString, ‘ PESOS AND ‘);

    END IF;

    SET _outputString = UPPER(CONCAT(_outputString,_cents,’/100 CENT(S)’)); — return the result

    RETURN _outputString;

    END

    ————————————————————————————-

    Also, is there a better function that u guys know about that convert numbers to words ?
    Thanks..

    Рекурсивный акроним словосочетания «PHP: Hypertext Preprocessor»
    Добро пожаловать на форум PHP программистов!

    Главная
    Документация
    Новости
    Форум

    За последние 24 часа нас посетили 11329 программистов и 1108 роботов. Сейчас ищут 250 программистов …

    Ошибки в Workbench

    Тема в разделе «MySQL», создана пользователем Алексей87К, 17 янв 2017.

    Метки:

    • sql

    1. Алексей87К

      Алексей87К
      Новичок

      С нами с:
      5 янв 2017
      Сообщения:
      157
      Симпатии:
      4

      Здравствуйте! Помогите пожалуйста разобраться в следующей ошибки
      1) Нужно было создать новую таблицу в Workbench. После генерации кода:

      Код (Text):
      1. CREATE TABLE `sql_zadaci`.`pages` (
      2. );

      Я нажимаю кнопку apply и мне выходит ошибка:

      PHP:
      1. Operation failed: There was an error while applying the SQL script to the database.
      2. Executing:
      3. CREATE TABLE `sql_zadaci`.`pages` (
      4. );

      Как это исправить? Не могу понять саму ошибку (я говорю не о переводе) Спасибо!

      #1


      Алексей87К,

      17 янв 2017

      Последнее редактирование модератором: 17 янв 2017


    2. Алексей87К

      Алексей87К
      Новичок

      С нами с:
      5 янв 2017
      Сообщения:
      157
      Симпатии:
      4

      РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!!РЕШЕНО!!!! )))))

      #2


      Алексей87К,

      17 янв 2017


    3. Fell-x27

      Fell-x27
      Суперстар

      Команда форума
      Модератор

      С нами с:
      25 июл 2013
      Сообщения:
      12.162
      Симпатии:
      1.770
      Адрес:
      :сердА

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

      #3


      Fell-x27,

      18 янв 2017


      denis01 нравится это.


    4. Алексей87К

      Алексей87К
      Новичок

      С нами с:
      5 янв 2017
      Сообщения:
      157
      Симпатии:
      4

      Решение: Нельзя создавать пустую таблицу. Нужно было просто добавить данные(поля)!

      #4


      Алексей87К,

      19 янв 2017


    5. Fell-x27

      Fell-x27
      Суперстар

      Команда форума
      Модератор

      С нами с:
      25 июл 2013
      Сообщения:
      12.162
      Симпатии:
      1.770
      Адрес:
      :сердА

      А….ну да. Таблица должны иметь структуру. И да, поля и данные — это не одно и то же.

      #5


      Fell-x27,

      19 янв 2017

    (Вы должны войти или зарегистрироваться, чтобы разместить сообщение.)

    Показать игнорируемое содержимое

    Ваше имя или e-mail:
    У Вас уже есть учётная запись?
    • Нет, зарегистрироваться сейчас.
    • Да, мой пароль:
    • Забыли пароль?

    Запомнить меня

    Понравилась статья? Поделить с друзьями:

    Читайте также:

  • Operation error log
  • Operation could not be completed error 0x00000709
  • Operating unit communication error
  • Operating system not found на ноутбуке что делать acer как исправить
  • Operating system error code 1326

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии