Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

UpDate. Как изменить одну запись, если их несколько одинаковых?


Страницы:   1 2 3 4 5

DmitrichJ ©   (2007-08-02 14:18:00) 

Допустим в базе есть несколько абсолютно одинаковых записей в 2-х полях:

  | name  | code |
1. | "Вася" |  0    |
2. | "Вася" |  0    |
3. | "Вася" |  0    |

и мне нужно одной, любой из этих записей изменить значение code.

Или всё же нужно создовать идентифицирующее поле np?


Игорь Шевченко   (2007-08-08 17:00:00) [1]

Sergey13 ©   (08.08.07 16:54) [91]

Советовал, начиная с поста [15]
И давай мы не будем устраивать оффтопик.


Sergey13   (2007-08-08 16:54:00) [2]

> [90] Игорь Шевченко ©   (08.08.07 16:50)

Я тебе что то советовал?


Игорь Шевченко   (2007-08-08 16:50:00) [3]

DrPass ©   (08.08.07 16:32) [89]

Вполне согласен

Sergey13 ©   (08.08.07 15:25) [87]


> ЗЫ: Только хотелось бы на основании различий решаемых задач
> не получать в свой адрес обвинений в мазохизме и прочих
> интересных пожеланий в полевых условиях.


А также хотелось бы, опять же, на основании различий решаемых задач, не получать рекомендаций, сводящихся к тому, что учение Маркса всесильно, потому что оно верно :)


DrPass   (2007-08-08 16:32:00) [4]


> Игорь Шевченко ©   (08.08.07 13:38) [82]


> Не МФО, а название ? МФО, насколько я понимаю, не поменялся
> ?

Да, т.к. необходимо хранить историю изменений - какие названия в какой период времени были закреплены за данным МФО. Это необходимо для корректного формирования платежных документов


zmalqop   (2007-08-08 15:29:00) [5]

Удалено модератором


Sergey13   (2007-08-08 15:25:00) [6]

> [86] Игорь Шевченко ©   (08.08.07 14:44)
> Видишь ли, я не знаю твоей задачи, ты не знаешь моих. Вполне вероятно, что твое средство от геморроя мне не подойдет по одной причине - у меня его нету :)

Вполне, даже очень вероятно, что задачи разные. Гемороя у меня тоже нет, т.к. мое средство профилактическое. 8-)

ЗЫ: Только хотелось бы на основании различий решаемых задач не получать в свой адрес обвинений в мазохизме и прочих интересных пожеланий в полевых условиях.


Игорь Шевченко   (2007-08-08 14:44:00) [7]

Sergey13 ©   (08.08.07 14:06) [85]

Видишь ли, я не знаю твоей задачи, ты не знаешь моих. Вполне вероятно, что твое средство от геморроя мне не подойдет по одной причине - у меня его нету :)


Sergey13   (2007-08-08 14:06:00) [8]

> [83] Игорь Шевченко ©   (08.08.07 13:39)
> поиск у тебя выдаст вместо одной сотню записей - это пофиг

Конечно пофиг. А если по фамилии искать то может и тысячу выдаст. И что? У тебя все поиски выдают единичные результаты?


TohaNik   (2007-08-08 13:51:00) [9]


> Игорь Шевченко ©   (08.08.07 13:38) [82]


> > Денюжкам название побоку, им МФО и счет подавай.
>
> Да неважно. В отчете тебе что надо, кроме названия ?


В вопрос не въехал.
Наверно мы совсем не знатоки в вопросах банков. :)


Игорь Шевченко   (2007-08-08 13:39:00) [10]

Sergey13 ©   (08.08.07 13:05) [80]


> Так работать то по разному можно. Вот ИНН везде печатать
> надо, искать по нему очень удобно. А вот таблицы связывать
> по нему - не хочу по вышеназванным причинам. Завтра сделают
> уникальность не по ИНН, а допустим по ИНН+ОКПО или еще как
> - мне пофиг, только чуток поиск поправить. А если бы я завязался
> на примари кей по ИНН - пол системы переделывать.


То есть, ИНН станет неуникальным и поиск у тебя выдаст вместо одной сотню записей - это пофиг, я верно тебя понимаю ?
Тогда тебе не стоит связывать по ИНН...


Игорь Шевченко   (2007-08-08 13:38:00) [11]

DrPass ©   (08.08.07 12:29) [78]


> Естественным ключом в таблице банков в правильно спроектированной
> системе должен быть МФО + дата начала действия записи +
> дата окончания действия.


Не МФО, а название ? МФО, насколько я понимаю, не поменялся ?

TohaNik ©   (08.08.07 12:29) [77]


> Денюжкам название побоку, им МФО и счет подавай.


Да неважно. В отчете тебе что надо, кроме названия ?


TMegaMaster(Lamer)   (2007-08-08 13:21:00) [12]


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


ага, только для этого случая и полезно, только какую информацию даст логин? полезнее будет выбрать ФИО, а тут уж без джойнов никуда. И изменить логин уже будет проблематично, если нет каскадных связей, а это не такая уж редкая операция.


Sergey13   (2007-08-08 13:05:00) [13]

> [74] Игорь Шевченко ©   (08.08.07 12:21)
> Свойство - оно же не само по себе живет, верно ? Тебе ж
> с ним как-то работать надо ? А если не надо - то нафига
> оно вообще ?

Так работать то по разному можно. Вот ИНН везде печатать надо, искать по нему очень удобно. А вот таблицы связывать по нему - не хочу по вышеназванным причинам. Завтра сделают уникальность не по ИНН, а допустим по ИНН+ОКПО или еще как - мне пофиг, только чуток поиск поправить. А если бы я завязался на примари кей по ИНН - пол системы переделывать.


DrPass   (2007-08-08 12:34:00) [14]

Вообще, спор о преимуществе естественных/суррогатных ключей - довольно бестолковое занятие. Однозначного ответа здесь нет. Можно смело утверждать, что в большинстве случаев суррогатный ключ не повредит, и позволит избежать лишних подводных камней. Но бывают и исключения. Например, в типичном справочнике пользователей лучше использовать естественный ключ - логин. Это позволит избежать кучи лишних джойнов с разными журналами в тех случаях, когда надо выяснить логин юзера, выполнившего ту или иную операцию и т.д.


TohaNik   (2007-08-08 12:29:00) [15]


> Игорь Шевченко ©   (08.08.07 12:23) [75]


> А денежки, пардон, как бы переехали ? :)

Денюжкам название побоку, им МФО и счет подавай.


DrPass   (2007-08-08 12:29:00) [16]


> Я не знаток в вопросах банков, ты, может быть, пояснишь,
>  в чем страх от изменения названия банки при наличии МФО
> (кстати, что это?) в  качестве первичного ключа ?

В том, что для сохранения корректности данных должна быть добавлена новая запись с тем же МФО, но с другим названием. МФО в принципе нельзя использовать в качестве первичного ключа, хоть он так и напрашивается на это. Естественным ключом в таблице банков в правильно спроектированной системе должен быть МФО + дата начала действия записи + дата окончания действия. И вполне логично в качестве первичного ключа здесь иметь суррогатный ID


TohaNik   (2007-08-08 12:28:00) [17]


> Игорь Шевченко ©   (08.08.07 12:23) [75]


> А денежки, пардон, как бы переехали ? :)

Денюжкам название побоку, им МФО и счет подавай.


Игорь Шевченко   (2007-08-08 12:23:00) [18]

TohaNik ©   (08.08.07 12:19) [72]


> МФО, это некий числовой код филиала(отделения) банка.
>
> Так вот он уникальный, иначе нарушится межфилиальный оборот(МФО),
>  а название к нему печатается во всех платежных документах.
>
>
> Был некий филиал банка "Аваль", а стал банка "Райфайзен-
> Аваль", старые платежки в архиве и меняться не должны, новые
> д.б. с новым названием.


Что-то я не понимаю, каким бы образом тебе в этом вопросе помог бы ID-ник ? Ты бы завел новый банк с тем же МФО, но с другим названием ?

А денежки, пардон, как бы переехали ? :)


TohaNik   (2007-08-08 12:21:00) [19]

PS
Я тоже не знаток в вопросах банков:)


Игорь Шевченко   (2007-08-08 12:21:00) [20]

Sergey13 ©   (08.08.07 11:42) [71]

Свойство - оно же не само по себе живет, верно ? Тебе ж с ним как-то работать надо ? А если не надо - то нафига оно вообще ?


Страницы:   1 2 3 4 5

Наверх

Титульная страница Поиск, карта сайта Написать письмо