каскадное удаление
Ну разве что ручками.
фсмысле - рекурсивно из всех зависящих таблиц?
вот этого я и хотел избежать...
вот этого я и хотел избежать...
ну ты же можешь в DELETE указать сразу все таблицы
DELETE FROM my_table_1 a, my_table_2 b WHERE a.b_id = b.id
DELETE FROM my_table_1 a, my_table_2 b WHERE a.b_id = b.id
Ага, и если таких a не окажется, то b тоже не удалится.
Круто будет, не сможешь из базы удалять пустые альбомы
Круто будет, не сможешь из базы удалять пустые альбомы

ну блин
замени равенство на нужный JOIN
DELETE FROM my_table_1 a LEFT JOIN my_table_2 b ON a.b_id = b.id
замени равенство на нужный JOIN
DELETE FROM my_table_1 a LEFT JOIN my_table_2 b ON a.b_id = b.id
Ну ты прямо на каком-то непонятном мне языке говоришь.
Кроме того, в любом случае - если автор треда потом введёт foreign keys, то огребёт немало геморроя с переписыванием:
Кроме того, в любом случае - если автор треда потом введёт foreign keys, то огребёт немало геморроя с переписыванием:
If you use a multiple-table DELETE statement involving InnoDB tables for which there are foreign key constraints, the MySQL optimizer might process tables in an order that differs from that of their parent/child relationship. In this case, the statement fails and rolls back. Instead, you should delete from a single table and rely on the ON DELETE capabilities that InnoDB provides to cause the other tables to be modified accordingly.
Ты тут не сказал, чтоименно удалять 

Ты тут не сказал, чтоименно удалятьты придираешься как КОНТРА
мысль же моя понятна была
мысль же моя понятна былаМне - не понятна.
Что именно ты удалить пытаешься? t1? Или t1 и t2?
Мне - не понятна.зависит от того что автору треда надо
Что именно ты удалить пытаешься? t1? Или t1 и t2?
если оба надо удалить, то:
DELETE a,b FROM my_table_1 a LEFT JOIN my_table_2 b ON a.b_id = b.id
Уверен, что это сработает?
У меня такое подозрение, что пустые альбомы всё-таки не удалятся.
Да, опять же - если потом переходить на fk, будут сильные проблемы.
У меня такое подозрение, что пустые альбомы всё-таки не удалятся.
Да, опять же - если потом переходить на fk, будут сильные проблемы.
Да, насколько я понимаю, тут наоборот должно быть:
DELETE a,b FROM my_table_1 a LEFT JOIN my_table_2 b ON b.a_id = a.id WHERE a.id = ?
Да, насколько я понимаю, тут наоборот должно бытьмдяяя
ты точно КОНТРА
Оставить комментарий
Alexander08
как?не прописывая в форен-кеях