Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Здравствуйте друзья-товарищи) Помогите решить проблему. У меня есть таблица содержающая название других таблиц. Эти таблицы в ручную сидеть очищать устал, тем более это надо делать каждый месяц. Подкиньте решение для процедуры очистки данных таблиц. Я понимаю что название таблиц надо поставить в параметр. Но сколько не колдовал у меня не получается. То есть на примере: у меня есть таблица TABLE_MAIN со столбцами(id, table_title,..) и таблицы table_1, table_2, table_3. Названия таблиц table_1, table_2, table_3 хранятся в TABLE_MAIN в столбце table_title. Надо чтобы процедура брала названия и table_title и в цикле очищала соответствующие таблицы. Помогите плиз) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 12:12 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Akex, может также как тут https://habrahabr.ru/post/52983/ ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 12:18 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Спасибо щас попытаюсь по колдовать) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 12:23 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
список таблиц как часто меняется? если очистка данных делается раз в месяц, может проще будет подключить ОС? одним запросом генерировать файл со списком delete-ов, и вторым запускать его на выполнение. https://phpclub.ru/mysql/doc/batch-commands.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 12:40 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Darkripple, Список таблиц постоянная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 12:49 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
AkexСписок таблиц постоянная. так если он постоянный - сделать один раз процедуру очистки и запускать её, хоть вручную, хоть по расписанию... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:14 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Darkripple, Че то лень 150 таблиц сидеть объявлять))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:24 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Darkripple, Понимаю что надо через CONCAT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:26 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Akex, а каждый месяц руками удалять не лень? Код: sql 1. ctrl+c, ctrl+v ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:28 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Шаблон (довести до ума самостоятельно) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:36 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Darkripple, может конечно я туповат..... Вроде возвращает +----------------------------------------+ | concat('delete*from ',table_title,';') | +----------------------------------------+ | delete*from analiz_alt; | | delete*from analiz_act; | +----------------------------------------+ 2 rows in set (0.00 sec). А как запустить процесс удаления? P/S напиши электронный счет свой закину за помощь 200 рублей) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:45 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Akina, пишет ошибка в 9 линий! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:49 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Akex , я же явно указал, что нужно сделать с кодом: Akinaдовести до ума самостоятельно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 13:57 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Akina, Блин я реально туповат)))) Помоги, мне не жалко 200 рублей чтобы избавиться от мучений) Тебе 5 секунд а мне целый день может забрать, чтобы понять как работает курсор. Напиши свой электронный счет закину или на телефон положу(звонить не буду, обещаю) Я же понимаю что Вы тратите свое время. А я из за свое глупости каждый месяц мучаюсь) Поэтому 200 рублей не жалко) только бы освободиться от этого морока.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 14:06 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
AkexDarkripple, может конечно я туповат..... Вроде возвращает | delete*from analiz_alt; в моём примере звёздочек не было. AkexА как запустить процесс удаления? также как и селекты запускаешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 14:30 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Akexпишет ошибка в 9 линий!ссылка раз про курсоры ссылка два про динамический sql в скрипте от Akina нужно местами поправить синтаксис (см примеры в ссылках) и самой процедуре при создании скобочек не хватает. P.S. для меня было неочевидно, что в процедуре препарировать можно только локальные переменные (по крайней мере мой dbForge отказался препарировать конкатенацию), поэтому сработало так: Код: plsql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 15:02 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Darkripple, Большое спасибо) напиши на почту andreev.kol1992@yandex.ru свой электронный счет или телефон. перечислю за помощь 300 рублей. Спасибо огромное.Буду ждать твоих реквизитов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 15:08 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Darkripple, Все разобрался написал процедуру. Теперь загадка века. Почему в EMS Mysql managere процедура не выполняется а в phpMysqlAdmin процедура работает отлично. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 16:34 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Darkripple, Еще маленькая проблема BEGIN DECLARE done integer default 1; DECLARE name1 varchar(64); DECLARE table_name varchar(64); DECLARE table_main varchar(64); DECLARE cur1 cursor for select `name`, table_title, typeA from `spisok`; declare continue handler for sqlstate '02000' set done=0; open cur1; while done=1 DO fetch cur1 into name1, table_name, table_main; set @ssss = concat('insert into ',table_name,'(UID,resultat) VALUES(2,4);'); PREPARE stmt FROM @ssss; execute stmt; end while; close cur1; END почему в 1 таблицу вставляет 2 записи а остальные по 1? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 16:46 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
Akex, т.е в последнюю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 17:01 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
и почему сервер ругаеться на процедуру в цикле BEGIN DECLARE done integer default 1; DECLARE name1 varchar(64); DECLARE table_name varchar(64); DECLARE table_main varchar(64); DECLARE cur1 cursor for select `name`, table_title, typeA from `spisok_analizov`; declare continue handler for sqlstate '02000' set done=0; open cur1; while done>0 DO fetch cur1 into name1, table_name, table_main; set @ssss = concat('insert into ',table_name,'(UID,date,resultat) select UID,data ',name1,' from ',table_main,';'); PREPARE stmt FROM @ssss; execute stmt; end while; close cur1; END Column count doesn't match value count at row 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2017, 17:27 |
|
||
|
Цикл в Mysq с параметрами
|
|||
|---|---|---|---|
|
#18+
добавь в процедуру после всех деклараций Код: sql 1. а после вызова процедуры сделай Код: sql 1. увидишь код своего инсерта. полагаю что раз он так ругается - что-то не то стоит в поле name одной из строк ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2017, 18:09 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39478969&tid=1830562]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 15ms |
| total: | 147ms |

| 0 / 0 |
