|
|
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
Добрый вечер всем! Есть три таблицы rabotniki, everyday, everymonth В таблицу rabotniki вносятся данные о работниках, в таблицу everyday вносятся данные о болезни и начисленная премия, в таблицу everymonth вставляются данные триггером вставки в таб. everyday сумма столбцов rabotniki.oklad и everyday.razmer_premii в столбец month_dohod при условии что если человек болен и не является членом профсоюза, то его month_dohod/2 Появляется ошибка ERROR 1242 (21000): Subquery returns more than 1 row при второй вставке в таблицу everyday (первую строку вставляет). Помогите, пожалуйста, исправить код, нигде не нашёл решение ERROR 1242 при инсерте. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2016, 23:51 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
drunja Код: sql 1. Вероятно, тут что-то пропущено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 00:00 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
miksoftdrunja Код: sql 1. Вероятно, тут что-то пропущено. Сделал так Код: sql 1. но теперь нельзя второй раз инсертить в таблицу everyday с тем же самым значением day_id ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 00:25 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
drunja, В каком смысле "нельзя" и что на самом деле нужно получить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 00:45 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
miksoftdrunja, В каком смысле "нельзя" и что на самом деле нужно получить? Например, делаю запрос на вставку Код: sql 1. 2. 3. 4. делаю еще один запрос (в столбец day_id так же как и в прошлом запросе вставляю 1) Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 00:55 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
выполните эти запросы Код: sql 1. 2. 3. и посмотрите, сколько записей они возвращают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 06:34 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
tanglirвыполните эти запросы Код: sql 1. 2. 3. и посмотрите, сколько записей они возвращают. одну запись возвращают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 16:39 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
проверяйте что там у вас, ошибка где-то, иного не дано Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 18:10 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinovпроверяйте что там у вас, ошибка где-то, иного не дано Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. убрал одну пару скобок, но всё равно та же ошибка. Не могу разобраться что тут не так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 20:18 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
так что разбираться... посмотрите запрос1 в паре 1. select razmer_premii from everyday where NEW.day_id 2. select oklad from rabotniki where man_id = NEW.day_id ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 21:20 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
копировал с вашего первого варианта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 21:21 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
drunja, Может, Вы таки опишете желаемое, что вы хотите получить от этого, мягко говоря, странного триггера ? Странного потому, что пытается читать из той же таблицы, при вставке в которую вызывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 21:24 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
miksoft, Вот оригинал задания: авторРазработайте базу данных для автоматизации начисления заработной платы в бухгалтерии. Зарплата начисляется работникам, имеющим установленные оклады (сдельных работ нет), На каждого работника хранятся следующие данные: - личный номер; - Ф.И.О.; - должность; - оклад; - семейное положение и число детей: - данные о невыходе на работу по болезни (даты заболевания и выздоровления). В период болезни работнику начисляется 50% зарплаты; 100% начисляется лишь членам профсоюза. Работникам могут начисляться премии и другие надбавки. С общей суммы зарплаты снимается подоходный налог 13 %. База данных должна обеспечивать: - ввод, изменение анкетных данных работников, сведения о болезнях, надбавках; - ежемесячный перерасчет зарплаты с выдачей ведомости на экран и на печать. Предположим авторНа каждого работника хранятся следующие данные: - личный номер; - Ф.И.О.; - должность; - оклад; - семейное положение и число детей: - данные о невыходе на работу по болезни (даты заболевания и выздоровления). это у нас будет таблица rabotniki тут всё понятно авторВ период болезни работнику начисляется 50% зарплаты; 100% начисляется лишь членам профсоюза. для этого я написал триггер который берет значение (chlen_profsouza) из таблицы rabotniki и значение bolen из таблицы everyday, проверяет на условие и вставляет в таблицу everymonth зарплату заработанную за день каждому работнику в зависимости от условия авторРаботникам могут начисляться премии и другие надбавки. Премию мы вставляем сами в таблицу everyday. это тоже понятно. авторС общей суммы зарплаты снимается подоходный налог 13 %. Это можно сделать запрос select на таблицу everymonth, в котором мы укажем month_id нужного нам работника, диапазон дат (в нашем случае последние 30 дней), а так же условие SUMM суммирование ежедневной зарплаты за 30 дней и вычитаем налог 13% в итоге запрос на вывод месячной зарплаты определенного работника будет выглядеть так Код: sql 1. с этим тоже понятно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 22:13 |
|
||
|
ERROR 1242 (21000) при insert
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinov, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. Все эти варианты пробовал, не получилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 22:46 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39158861&tid=1832217]: |
0ms |
get settings: |
7ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
180ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 497ms |

| 0 / 0 |
