Mysql Insert, если определенный столбец недоступен для одного и того же сотрудника.

У меня есть контроллер для сохранения записи

Моя таблица содержит НИЖЕ поля

Это должно (это должно повториться в LOOP).

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

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

Этот процесс должен повторяться внутри цикла, и мне нужно получить последний введенный идентификатор из таблицы и назначить количество учеников в другой таблице. Это все работает нормально, если я создаю процедуру в Mysql и если я вызываю процедуру. Но мой сервер Linux не выполняет и выдает ошибку MySQL.

Вот мой запрос и

<code>
  
    $insert_staff_assign = "insert into staff_assign 
    (`main_course_id`, `main_batch_id`, `section`, `semester_course_id`, `emp_mas_staff_id`, `emp_category`) 
    VALUES 
    (:main_course_id, :main_batch_id, :section_id, :semester_course_id, :emp_mas_staff_id, :emp_category) 
    ON DUPLICATE KEY UPDATE 
    main_course_id=:main_course_id, main_batch_id=:main_batch_id, section=:section_id, semester_course_id=:semester_course_id, emp_mas_staff_id=:emp_mas_staff_id, emp_category=:emp_category ";

    insert into staff_assign 
    (`main_course_id`, `main_batch_id`, `section`, `semester_course_id`, `emp_mas_staff_id`, `emp_category`) 
    VALUES 
    (:main_course_id, :main_batch_id, :section_id, :semester_course_id, :emp_mas_staff_id, :emp_category) 
    ON DUPLICATE KEY UPDATE 
    main_course_id=:main_course_id, main_batch_id=:main_batch_id, section=:section_id, semester_course_id=:semester_course_id, emp_mas_staff_id=:emp_mas_staff_id, emp_category=:emp_category 

    insert into staff_assign 
    (`main_course_id`, `main_batch_id`, `section`, `semester_course_id`, `emp_mas_staff_id`, `emp_category`) 
    SELECT * FROM (
        SELECT 
        :main_course_id, :main_batch_id, :section_id, :semester_course_id, :emp_mas_staff_id, :emp_category
    ) AS tmp WHERE NOT IN (
        SELECT emp_mas_staff_id FROM staff_assign WHERE emp_mas_staff_id = $save_emp_mas_staff_id
    ) LIMIT 1
  </code>

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

Выше приведены мои запросы.

Мои поля таблицы

1 ответ

Решение

Я нашел ответ на вышеуказанный вопрос.

проблема mysql.proc.

В моем MySQL мой MySQL был поврежден. По этой причине он не выполняет вышеуказанный запрос.

Чтобы исправить вышеуказанную проблему, вам нужно обновить mysql в linux.

Другие вопросы по тегам