|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
Столкнулся с проблемой, что связующая таблица в отношении many-to-many не редактируется (UPDATE). Короткое гугление привело к открытию, что это исключительно из-за того, что у этой таблицы не было primary key поля. По идее pk в такой таблице не нужен.. Но пришлось сделать (при этом не использовать). Раньше я работал в основном с Oracle, там такой проблемы не было, там других граблей хватало (чего только работа с датами и таймстампами стоит!) Причем наткнулся-то случайно! В TOAD-е попробовал смотреть и редактировать, выдает ошибку "Динамическое создание SQL для UpdateCommand не поддерживается для SelectCommand, не возвращающей никаких сведений о столбце ключей". До этого Spring JDBC молчком отвергал попытки редактирования записей. У него это в порядке вещей - половину ошибок не обрабатывает, гад!. Довольно долго я тупил, дескать на глаззах происходит невероятное!.. ))) А как вы реализуете отношение many-to-many в MySQL ? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 08:48 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
я с MySQL не знаком, но по-моему это ошибки не сервера, а клиента ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 10:37 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
Не редактируется клиентом (читай автогенерилкой инструкций механизмом доступа к данным) и не выполнятеся UPDATE - суть две большие разницы. У Вас первый случай. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 10:38 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
Так от этого же не легче! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 10:49 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesier, вкраце: Код: plaintext 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.
Но это не значит, что ПК не нужен. Очень даже нужен. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 10:52 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierПо идее pk в такой таблице не нужен.. 1 pk нужен всегда 2 pk - это не обязательно автоинкриментное поле ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:00 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
advmesier, Код: plaintext 1. 2. 3. 4. 5. 6.
Ненене! Вообще не то! Во-1, вы зря думаете, что я это не пробовал.. Во-2, вторичные ключи прежде всего служат как ограничение целостности - гарантия того, что в поле с foreign key не появится "левых" ИДшников, отсутствующих в первичном ключе.. На разрешение редактирование это не влияет. Рекомендую попробовать одновременно залогиниться с 2-3 мест и что-нибудь проапдейтить в этой таблице. Думаю, ждет разочарование.. adv Но это не значит, что ПК не нужен. Очень даже нужен. Зачем он в связующей таблице? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:19 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
qwerty112mesierПо идее pk в такой таблице не нужен.. 1 pk нужен всегда Вопрос тот же - зачем он в связующей таблице отношения many-to-many? qwerty1122 pk - это не обязательно автоинкриментное поле Но всегда уникальное. Что сводит на нет использование его в данном случае.. Впрочем, вопрос остается открытым: если знаете как реализовать много-ко-многим по другому, более рационально - с удовольствием выслушаю! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:21 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierqwerty112пропущено... 1 pk нужен всегда Вопрос тот же - зачем он в связующей таблице отношения many-to-many? что бы Вам было легче и Вы могли редактировать на клиенте а так, если таблица не предполагает редактирования - не нужен ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:26 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesieradv Но это не значит, что ПК не нужен. Очень даже нужен. Зачем он в связующей таблице?Как по вашему: Зачем в таблице нужен ПК? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:26 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
SergSuper чтобы Вы могли редактировать на клиенте Не могли бы вы подробнее разъяснить этот момент? Я с Мускулом недавно, видимо чего-то не знаю.. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:29 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
advmesierпропущено... Зачем он в связующей таблице?Как по вашему: Зачем в таблице нужен ПК? Нет уж, сначала вы ответьте на мой вопрос.. )) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:33 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesier, ваш вопрос подразумевает, что вы не до конца прочитали определение первичного ключа. Дочитайте до конца и вопросы отпадут ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:35 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierНет уж, сначала вы ответьте на мой вопрос.. )) поддерживаю. ПК нужен для однозначной идентификации записи. Нет возможности наложить ПК - тогда о каком адресном удалении или редактировании может идти речь, если не прибегать к низкоуровневым средствам по типу rowid, rdb$db_key etc? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:42 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierSergSuper чтобы Вы могли редактировать на клиенте Не могли бы вы подробнее разъяснить этот момент? Я с Мускулом недавно, видимо чего-то не знаю.. да по-моему не только с Мускулом ... вы хотите отредактировать одну запись, для этого клиент посылает на сервер запрос update ... where ... если есть первичный ключ, то во where ставится условие по первичному ключу если первичного ключа нет - какое условие должен ставить клиент? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:43 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
arni... Нет возможности наложить ПК ...Назовите хотя бы одну разумную причину, по которой в рассматриваемом случае может не быть этой возможности. 2mesier покурите мысль для приведённого примера без ПК: как будет работать система, если записи в таблице mn будут дублироваться. или чуть похуже: повторяться раз по стопицот. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 11:54 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
SergSuperесли первичного ключа нет - какое условие должен ставить клиент? Даже древняя вещь по фамилии BDE умела в этих случаях заносить в условие все поля таблицы. Современные драйвера, оказывается, глупее?.. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:02 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
SergSuper вы хотите отредактировать одну запись, для этого клиент посылает на сервер запрос update ... where ... если есть первичный ключ, то во where ставится условие по первичному ключу если первичного ключа нет - какое условие должен ставить клиент? Ещё раз обращаю ваше внимание, что речь ведется не о просто таблице с записями, а о связующей таблице в отношении много-ко многим.. Возьмем за основу пример, приведенный adv, и представим, что создаем систему обмена сообщениями. n - справочник сообщений, m - справочник людей. mn - таблица получателей сообщений. У каждого получателя может быть много сообщений, каждое сообщение может быть отправлено множеству получателей. В этой таблице может быть ещё поле, обозначающее, допустим, прочитано ли сообщение. Таким образом однозначно идентифицировать запись можно по одновременному совпадению id сообщения и id человека.. Разве нет? select * from mn a, n b, m c, where b.i = a.i and c.j = a.j Ну и зачем первичный ключ? Впрочим, если я где-то заблуждаюсь, готов выслушать наставления, только по возможности адекватное, а не как обычно на российских форумах.. )) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:06 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
advarni... Нет возможности наложить ПК ...Назовите хотя бы одну разумную причину, по которой в рассматриваемом случае может не быть этой возможности. 2mesier покурите мысль для приведённого примера без ПК: как будет работать система, если записи в таблице mn будут дублироваться. или чуть похуже: повторяться раз по стопицот. Оставьте пожалуйста ваши назидания!.. Наличие или отсутствие отдельного поля под первичный ключ - не гарантия того, что не будет полного совпадения пары вторичных ключей.. Что чаще всего означает ошибку в проекте. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:11 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierНаличие или отсутствие отдельного поля под первичный ключ - не гарантия того, что не будет полного совпадения пары вторичных ключей.. qwerty1122 pk - это не обязательно автоинкриментное поле развивая мысль - это не обязательно дополнительное поле. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:16 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
advmesierНаличие или отсутствие отдельного поля под первичный ключ - не гарантия того, что не будет полного совпадения пары вторичных ключей.. qwerty1122 pk - это не обязательно автоинкриментное поле развивая мысль - это не обязательно дополнительное поле. Повторяю: но это обязательно уникальное поле. Что по вновь предложенной вами схеме автоматически превращает отношение many-to-many в many-to-one.. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:20 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesier однозначно идентифицировать запись можно по одновременному совпадению id сообщения и id человека.. Разве нет? select * from mn a, n b, m c, where b.i = a.i and c.j = a.j Ну и зачем первичный ключ?Ну так значит "id сообщения и id человека" - это и есть первичный ключ. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:20 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
miksoftmesier однозначно идентифицировать запись можно по одновременному совпадению id сообщения и id человека.. Разве нет? select * from mn a, n b, m c, where b.i = a.i and c.j = a.j Ну и зачем первичный ключ?Ну так значит "id сообщения и id человека" - это и есть первичный ключ. +1 щас ТС откроет для себя составной ключ :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:25 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesiern - справочник сообщений, m - справочник людей. mn - таблица получателей сообщений. У каждого получателя может быть много сообщений, каждое сообщение может быть отправлено множеству получателей. В этой таблице может быть ещё поле, обозначающее, допустим, прочитано ли сообщение. Таким образом однозначно идентифицировать запись можно по одновременному совпадению id сообщения и id человека.. Разве нет? select * from mn a, n b, m c, where b.i = a.i and c.j = a.j В этом примере уже нельзя 'однозначно идентифицировать запись'. Гляньте подчёркнутое - по паре i,j не удастся различить 'может быть ещё поле'. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:27 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
непонятный спор в любом случае либо записи как то отличаются либо если есть две неотличимые записи - но как тогда понять какую менять надо? надо менять все такие записи сейчас - можно выполнить UPDATE ... WHERE ... возможно он изменит несколько записей а вообще - заведи ключ ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:30 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
я не понял идея, что ключ может включать несколько полей, в голове не прижилась? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:32 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
miksoftmesier однозначно идентифицировать запись можно по одновременному совпадению id сообщения и id человека.. Разве нет? select * from mn a, n b, m c, where b.i = a.i and c.j = a.j Ну и зачем первичный ключ?Ну так значит "id сообщения и id человека" - это и есть первичный ключ. Оппа! А вот и решение проблемы! Сказать по правде, НИКОГДА не пользовался первичными ключами из двух полей. Даже не знал, что так можно.. ))) Огромное спасибо! Сейчас попробовал - работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:35 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
qwerty112miksoftпропущено... Ну так значит "id сообщения и id человека" - это и есть первичный ключ. +1 щас ТС откроет для себя составной ключ :)) Ога! ))) Пребывал под воздействием стереотипов каких-то.. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:38 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
U-geneя не понял идея, что ключ может включать несколько полей, в голове не прижилась? Ну да. За ненадобностью.. Работая с Oracle, я в аналогичной ситуации на связующей таблице создавал только foreign key, и этого хватало. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:44 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierSergSuper вы хотите отредактировать одну запись, для этого клиент посылает на сервер запрос update ... where ... если есть первичный ключ, то во where ставится условие по первичному ключу если первичного ключа нет - какое условие должен ставить клиент? Ещё раз обращаю ваше внимание, что речь ведется не о просто таблице с записями, а о связующей таблице в отношении много-ко многим.. ничего подобного, изначально речь шла о редактировании абстрактной таблицыmesierВозьмем за основу пример, приведенный adv, и представим, что создаем систему обмена сообщениями. n - справочник сообщений, m - справочник людей. mn - таблица получателей сообщений. У каждого получателя может быть много сообщений, каждое сообщение может быть отправлено множеству получателей. В этой таблице может быть ещё поле, обозначающее, допустим, прочитано ли сообщение. Таким образом однозначно идентифицировать запись можно по одновременному совпадению id сообщения и id человека.. Разве нет? select * from mn a, n b, m c, where b.i = a.i and c.j = a.j Ну и зачем первичный ключ? Впрочим, если я где-то заблуждаюсь, готов выслушать наставления, только по возможности адекватное, а не как обычно на российских форумах.. ))к сожалению не все обертки к БД такие интеллектуальные, некоторые не могут так рассуждать и читать Ваши мысли ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 12:44 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
SergSuper ничего подобного, изначально речь шла о редактировании абстрактной таблицы Так таки абстрактной?? Цитата из стартового сообщения: "связующая таблица в отношении many-to-many не редактируется (UPDATE)." Подумал, что не требуется детально описывать сущность.. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 13:19 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierSergSuper ничего подобного, изначально речь шла о редактировании абстрактной таблицы Так таки абстрактной?? Цитата из стартового сообщения: "связующая таблица в отношении many-to-many не редактируется (UPDATE)." Подумал, что не требуется детально описывать сущность.. а чуть подальше: В TOAD-е попробовал смотреть и редактировать т.е. просто редактируется абстрактная таблица, для TOAD то всё равно ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 14:22 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierТаким образом однозначно идентифицировать запись можно по одновременному совпадению id сообщения и id человека.. Разве нет? это и будет первичный ключ. запись идентифицировать можно по первичному ключу. Первичный ключ не допускает повторов, значит в таблице запрещены 2 и более записей с одной и той же комбинацией id сообщения и id человека. Без ПК можно будет занести массу таких записей, и они не будут иметь смысла id_msg, id_person 1 1 1 1 1 1 .. ПК такого не допустит. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 14:45 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
kdvБез ПК можно будет занести массу таких записей, и они не будут иметь смысла Ну, может в модели данных аффтара это имеет какой-нибудь смысл... Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2011, 15:30 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
On 13.10.2011 9:48, mesier wrote: > По идее pk в такой таблице не нужен.. Но пришлось сделать (при этом не По идее в любой таблице обязательно должен быть PK. Иначе записи неидентифицируемы и ты не сможеш их обрабатывать с помощью SQL. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2011, 11:49 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
MasterZivИначе записи неидентифицируемы и ты не сможеш их обрабатывать с помощью SQL. Шо, какой-то сервер без ПК не способен даже посчитать select count(*),sum(f) from t?.. Фтопку его! Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2011, 11:56 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
MasterZivOn 13.10.2011 9:48, mesier wrote: > По идее pk в такой таблице не нужен.. Но пришлось сделать (при этом не По идее в любой таблице обязательно должен быть PK. Иначе записи неидентифицируемы и ты не сможеш их обрабатывать с помощью SQL. с данными надо работать, а не с записями... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2011, 12:21 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
MasterZivOn 13.10.2011 9:48, mesier wrote: > По идее pk в такой таблице не нужен.. Но пришлось сделать (при этом не По идее в любой таблице обязательно должен быть PK. Иначе записи неидентифицируемы и ты не сможеш их обрабатывать с помощью SQL. Я смогу их обрабатывать и без pk.. По сути любые ключи являются лишь ограничением целостности. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2011, 21:45 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierПо сути любые ключи являются лишь ограничением целостности. правильно. осталось подумать, для чего в СУБД нужны ограничения целостности. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2011, 23:46 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
kdvmesierПо сути любые ключи являются лишь ограничением целостности. правильно. осталось подумать, для чего в СУБД нужны ограничения целостности. Да что вы говорите!... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2011, 08:23 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierВпрочем, вопрос остается открытым: если знаете как реализовать много-ко-многим по другому, более рационально - с удовольствием выслушаю!Конечно... У вас многие ко многим всегда вырождаются в отдельную таблицу, PK которой вся запись. Просто вам этого не объяснили на курсах СУБД для мотористов. Поясняю: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2011, 03:08 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
Warstone Просто вам этого не объяснили на курсах СУБД для мотористов. Очень смешно... С pk уже разобрались. Вы не могли этого не заметить, если бы бегло просмотрели топик. Стоило ли отвечать, если ничего нового Вы не привнесли в тему? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2011, 05:16 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
WarstonemesierВпрочем, вопрос остается открытым: если знаете как реализовать много-ко-многим по другому, более рационально - с удовольствием выслушаю!Конечно... У вас многие ко многим всегда вырождаются в отдельную таблицу, PK которой вся запись. Просто вам этого не объяснили на курсах СУБД для мотористов. Поясняю: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Потенциальный ключ нужен почти всегда. А вот PRIMARY KEY не факт, особенно, если на сущность нет и не планируется FOREIGN KEY. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2011, 19:13 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesier, вообще, СУБД должна делать то, что ей скажут. Сказали обновить записи по предикату - пусть обновляет. Если под предикат подходят все записи таблицы - это проблемы разработчика, а не СУБД. Если первичного ключа нет - это не повод откатывать операцию. Обновлять надо всё, что подходит под условие, первичный ключ вообще ни при чём. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2011, 19:18 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
ОКТОГЕНПотенциальный ключ нужен почти всегда. А вот PRIMARY KEY не факт...К чему эта фраза, если ПК является одним из потенциальных? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2011, 00:36 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
ОКТОГЕНmesier, вообще, СУБД должна делать то, что ей скажут. Сказали обновить записи по предикату - пусть обновляет. Если под предикат подходят все записи таблицы - это проблемы разработчика, а не СУБД. Если первичного ключа нет - это не повод откатывать операцию. Обновлять надо всё, что подходит под условие, первичный ключ вообще ни при чём. Так вот я тоже так думал. Пока не поработал с MySQL. Этому подавай первичный ключ, если хочешь апдейтить, и всё тут!.. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2011, 08:16 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierТак вот я тоже так думал. Пока не поработал с MySQL. Этому подавай первичный ключ, если хочешь апдейтить, и всё тут!.. Мдя... Рация работает на танке... "Этому" - это "TOADу". ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2011, 08:32 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
pkarklinmesierТак вот я тоже так думал. Пока не поработал с MySQL. Этому подавай первичный ключ, если хочешь апдейтить, и всё тут!.. Мдя... Рация работает на танке... "Этому" - это "TOADу". Да хоть кому! Я так понял, что любой программе, использующей jdbc-вызовы. Можете назвать где такого требования нет? Где апдейт таблицы MySQL без pk будет работать? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2011, 09:37 |
|
Уникальная херь у Мускула - нельзя апдэйтить запись если в таблице нет поля primary key?
|
|||
---|---|---|---|
#18+
mesierМожете назвать где такого требования нет? Где апдейт таблицы MySQL без pk будет работать? В любой программе, которая не пытается сгенерить предикат для запроса, основываясь на получении метаданных. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2011, 09:41 |
|
|
start [/forum/topic.php?all=1&fid=35&tid=1552633]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
74ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 165ms |
0 / 0 |