Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 13:57 25.06.24 
Клубове/ Компютри и Интернет / Бази данни Пълен преглед*
Информация за клуба
Тема AutoInc и Генератори
Автор Miro ()
Публикувано06.06.05 21:30  



Връщам в клуба една дискусия, която се заформи между мен и salle:

Твърдиш, че основнатга задача на auto_increment да генерират уникални стойности (което е оснавна и единствен а задача на UUID финкциите) и не желаеш да възприемеш въобще, че има друга задача която те изпълняват а именно генерирането на последователности

Както се казах (или поне се опитах да кажа) на няколко пъти: Основната цел и на AutoInc и на Генераторите е да дадат уникална стойност в случай на конкурентни транзакции/връзки. Всеки DB сървър гарантира че конкурентни връзки няма да получат еднакво ID дори и в един и същ момент да подадат заявка за генериране на ID.

Четох статията ти и в нея се стараеш да докажеш, че auto_increment нямат никакво приложение.

Както казах в статията Ползвал съм AutoInc колони - не мога да го отрека. Също така не мога да отрека че за простички случаи тези колони си пасват идеално, т.е. не ги отричам - просто казвам къде са идеални за ползване и къде не.

Виж ако беше казал, че в частния случай когато използваш свойството уникалност предимстват аим не са особено големи щеше да е друго. Само, че цялата ти статия е изградена върху пълно отрицание при това тенденциозно именно защото вадиш частния случай от контекста му на такъв и обобщаваш.

Мога да ти дам един пример. Ти самият се съгласяваш, че всеки случай е специфичен и, че дадено решение може да е добро в един случай но неподходящо в друг. В същото време обаче се самоопровергаваш твърдейки, че има "Абсолютно погрешно виждане"

Визирам следния абзац:

"Работех по един проект известно време, където т.нар. project manager си беше втълпил идеята че всяка една таблица трябва да има AutoInc поле! Абсолютно погрешно виждане."

Ами ти противопоставяш едно напълно крайно виждане срещу друго крайно виждане. При това положение с нищо не си по-добър от въпросния мениджър


Ако се замислим по-добре над цитирания абзац, аз лично виждам следния смисъл : "Абсолютно погрешното виждане" е че всяка таблица се поставя под "общ знаменател" и се казва от този project manager "че ВСЯКА таблица трябва да има AutoInc Ей това е абсолютно погрешното - не можеш всички таблици да ги приравняваш, всяка таблица си има особености и трябва да се преценява според таблицата.


Аз бих казал "Чак пък всяка таблица ..."

По-нататък подкрепяш твърдението си с още по-краен пример:

"Когато една таблица си има "естествена" уникалност в някоя стойност от данните - няма никаква нужда да се добавя още едно поле (AutoInc), което не носи никаква информация в повече. "

На теория си прав. На практика много често има нужда и това е прословутото (практическо) правило на Администраторите на Бази Данни (DBA):

Първо Нормализирай колкото се може повече. След това Денормализирай там където ще спечелиш скорост.

Когато имаш композитен първичен ключ върху няколко стрингови колонки (Някакви имена да речем) тогава добавянего на излишък под формата на уникална целочислена колонка може многократно да ускори работата на заявките.


Напълно съм съгласен


Колкото до генерирането на последователности това е изключително важна задача просто защото има куп "външни" фактори които я изискват включително нормативни и законови. Пример: Номера на фактури, заповеди, служебни бележки, командировъчни и т.н. трябва да са последователни по закон.


Ок, напълно съм съгласен за генерирането на последователности, но основната задача според мен на AutoInc-а и генераторите я написах в началото. (Между другото според доста закони и наредби е проблемно наличието на "дупки" в последователностите. А такива дупки се получават много лесно при AutoInc и генераторите. Затова аз лично не ползвам генератори/AutoInc за местата, където по закон се искат последователни номера без дупки).


"Защо не кажеш нищо за статията ми за лиценза на MySQL?"

Къде е тази статия?


http://cleverdevelopers.blogspot.com/2005/05/open-source.html

Изпаднала е от списъка с recent статии.


"Нещо невярно и непроучено ли съм написал там?"
Интересно ми е къде си проучвал. Честно казано през годините съм изчел тонове глупости по въпроса.
(Работя за MySQL AB от март 2002 а използвам MySQL от 1997)


Проучвал съм от сайта на MySQL, но ти като вътрешен човек ще ме изкоригираш тук там за статията . Както казах в един друг разговор - коригирал съм в почти всяка публикувана статия след получени коментари от читатели


"Ами статиите ми за Firebird?"
Не разибрам от Firebird а твърдо вярвам, че е непрофесионално да изказваш мнение за нещо което не разбираш. В това отношерние явно имаме големи различия.


Нямаме различия по тази точка, но както винаги съм мразил електронната комуникация - винаги все нещо остава неразбрано от двете страни. Няма нищо по-добро от директния разговор.


Между другото защо изнесе този спор извън клуба? Аз не изпитвам никакви притеснения това което пиша тук да може да се чете от всекиго.

Ето, върнах го. Просто не очаквах че ще продължи дълго разговора

--
Miroslav Penchev


Цялата тема
ТемаАвторПубликувано
* AutoInc и Генератори Miro   06.06.05 21:30
. * Re: AutoInc и Генератори Miro   06.06.05 21:36
. * Re: AutoInc и Генератори salle   07.06.05 04:33
. * Re: AutoInc и Генератори Miro   07.06.05 10:41
. * Re: AutoInc и Генератори Mixy   07.06.05 12:33
. * Re: AutoInc и Генератори Лoл   07.06.05 13:16
. * Re: AutoInc и Генератори Miro   07.06.05 15:11
. * Re: AutoInc и Генератори Mixy   07.06.05 17:50
. * Re: AutoInc и Генератори TTRex   06.06.05 23:03
. * Re: AutoInc и Генератори Miro   07.06.05 11:20
. * Re: AutoInc и Генератори TTRex   07.06.05 21:30
. * Re: AutoInc и Генератори Miro   07.06.05 21:40
. * Re: AutoInc и Генератори fiffy   06.06.05 23:44
. * Re: AutoInc и Генератори Miro   07.06.05 11:58
. * Re: Ама ти си повтаряш като развален грамофон salle   07.06.05 12:55
. * Re: Ама ти си повтаряш като развален грамофон Miro   07.06.05 17:23
. * Re: Ама ти си повтаряш като развален грамофон ro6avia   07.06.05 18:57
. * Re: Ама ти си повтаряш като развален грамофон phpGuru   07.06.05 19:14
. * Re: Ама ти си повтаряш като развален грамофон ro6avia   07.06.05 20:39
. * Re: Ама ти си повтаряш като развален грамофон phpGuru   08.06.05 10:39
. * Re: Ама ти си повтаряш като развален грамофон NDeu   08.06.05 11:15
. * Re: Ама ти си повтаряш като развален грамофон phpGuru   08.06.05 12:48
. * Re: Ама ти си повтаряш като развален грамофон Miro   11.06.05 14:29
. * Re: Ама ти си повтаряш като развален грамофон Wolfheart   11.06.05 22:57
. * Re: AutoInc и Генератори fiffy   07.06.05 18:32
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.