ďťż
 
indeks i mySQL ďťż
 
indeks i mySQL
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

indeks i mySQL



Marcin - 14-11-2006 00:10
indeks i mySQL
  Witam!

Pytanie zapewne banalne,

mam tabelę

id | imie | nazwisko
1 a xx
2 b yy
3 c zz

id jest kluczem podstawowym, auto increment
Jesli usunę wpis id 2 i dodam kolejny otrzymuję id = 4

id | imie | nazwisko
1 a xx
3 c zz
4 d qq

Czy jest możliwość że przy usunięciu id =2 baza będzie zawierała

id | imie | nazwisko
1 a xx
2 c zz
3 d qq

niekoniecznie musi odbywać się to na id, może trzeba wprowadzić dodatkowe
pole w tabeli, chodzi mi o stricte liczbę porządkową.

Z góry dzięki za pomoc





keczerad - 14-11-2006 00:10

  Marcin napisał(a):
> Witam!
>
> Pytanie zapewne banalne,
>
> mam tabelę
>
> id | imie | nazwisko
> 1 a xx
> 2 b yy
> 3 c zz
>
> id jest kluczem podstawowym, auto increment
> Jesli usunę wpis id 2 i dodam kolejny otrzymuję id = 4
>
> id | imie | nazwisko
> 1 a xx
> 3 c zz
> 4 d qq
>
> Czy jest możliwość że przy usunięciu id =2 baza będzie zawierała
>
> id | imie | nazwisko
> 1 a xx
> 2 c zz
> 3 d qq
>
> niekoniecznie musi odbywać się to na id, może trzeba wprowadzić dodatkowe
> pole w tabeli, chodzi mi o stricte liczbę porządkową.

pytanie po co ?

--

keczerad

http://www.e-mo.com.pl
sklep w (X)HTML




Marcin - 14-11-2006 00:10

  > pytanie po co ?
>

Zadałem konkretne pytanie wydaje mi się, a nie prosiłem o ocenę czy to ma
sens w Twoich oczach czy nie.




news.onet.pl - 14-11-2006 00:10

  Marcin napisał(a):
> id jest kluczem podstawowym, auto increment
> Czy jest możliwość że przy usunięciu id =2 baza będzie zawierała

Nie. Klucz podstawowy jest _niezmienny_

--
Matt Z





Michał Kuratczyk - 14-11-2006 00:10

  Marcin wrote:
> Zadałem konkretne pytanie wydaje mi się, a nie prosiłem o ocenę czy to ma
> sens w Twoich oczach czy nie.
A jak się Ciebie ktoś zapyta, czy można tak walnąć głową w ścianę, żeby
sobie złamać kręgosłup, to też pomożesz znaleźć rozwiązanie, czy jednak
zapytasz czemu dana osoba chce to zrobić?

To co chcesz osiągnąć jest złe, sprzeczne ze wszystkimi zasadami baz
danych. Po prostu tego nie rób. Nie potrzebujesz tego, naprawdę.

--
Michał Kuratczyk




Piotr Kuliński - 14-11-2006 00:11

  Michał Kuratczyk naskrobał(a) co następuje:

> Marcin wrote:
>> Zadałem konkretne pytanie wydaje mi się, a nie prosiłem o ocenę czy to ma
>> sens w Twoich oczach czy nie.
> A jak się Ciebie ktoś zapyta, czy można tak walnąć głową w ścianę, żeby
> sobie złamać kręgosłup, to też pomożesz znaleźć rozwiązanie, czy jednak
> zapytasz czemu dana osoba chce to zrobić?
>
> To co chcesz osiągnąć jest złe, sprzeczne ze wszystkimi zasadami baz
> danych. Po prostu tego nie rób. Nie potrzebujesz tego, naprawdę.
>
Żle człowieka osądzacie, przecież napisał wyraźnie
>niekoniecznie musi odbywać się to na id, może trzeba wprowadzić dodatkowe
>pole w tabeli, chodzi mi o stricte liczbę porządkową.
Więc nie koniecznie musi to być klucz główny. Jeśli mają to być numery
spraw, np. wprowadził jakąś sprawę o numerze X (może to byc ostatnia w
tabeli) ale stwierdził że zupełnie jest niepotrzebna więc usuwa dodaje nowy
rekord i numer sprawy jest X+2 a X+1 uciekło :(
Oczywiście pilnowanie może załatwiać soft a nie baza, ale chodziło mu chyba
o bazę.

--
pozdrawiam, GG i SkyPe w X-nagłówku posta, e-mail: zmień "wpw" na "wp"
piotr "Nic nie stoi na przeszkodzie, co by przeszkody sobie nie
stworzyć :)"




Michał Kuratczyk - 14-11-2006 00:11

  Piotr Kuliński wrote:
> Więc nie koniecznie musi to być klucz główny. Jeśli mają to być numery
> spraw, np. wprowadził jakąś sprawę o numerze X (może to byc ostatnia w
> tabeli) ale stwierdził że zupełnie jest niepotrzebna więc usuwa dodaje
> nowy rekord i numer sprawy jest X+2 a X+1 uciekło :(

To niewiele zmienia. Tak czy inaczej trzeba to zrobić po prostu szeregując
operacje na tej tabeli, co często wiąże się z serializacją dużej części
systemu. Trzeba mieć cholernie dobry powód, żeby sobie zrobić taką krzywdę.
A ja tam osobiście staram się nie pomagać ludziom w robieniu sobie krzywdy,
dopóki mnie nie przekonają, że to dla ich dobra. :->

> Oczywiście pilnowanie może załatwiać soft a nie baza
Może, tylko po co...

--
Michał Kuratczyk




Artur Muszynski - 14-11-2006 00:11

  Michał Kuratczyk wrote:
> To niewiele zmienia. Tak czy inaczej trzeba to zrobić po prostu
> szeregując operacje na tej tabeli, co często wiąże się z serializacją
> dużej części systemu. Trzeba mieć cholernie dobry powód, żeby sobie
> zrobić taką krzywdę. A ja tam osobiście staram się nie pomagać
> ludziom w robieniu sobie krzywdy, dopóki mnie nie przekonają, że to
> dla ich dobra. :->

Przykład, który mnie często prześladuje, to "liczba porządkowa". Nie widzę
innej sensownej możliwości, jak coś w stylu UPDATE ... WHERE lp=lp-1, ale
też nie widzę niczego strasznego w takiej operacji. Oczywiście, nie jest to
PK.

artur




Michał Kuratczyk - 14-11-2006 00:11

  Artur Muszynski wrote:
> Przykład, który mnie często prześladuje, to "liczba porządkowa". Nie widzę
> innej sensownej możliwości, jak coś w stylu UPDATE ... WHERE lp=lp-1, ale
> też nie widzę niczego strasznego w takiej operacji. Oczywiście, nie jest
> to PK.
Straszność zależy od wielu czynników i dlatego w dalszym ciągu uważam, że
osoba pytająca powinna wyjaśnić dlaczego chce zrobić to, co chce zrobić.
Jeżeli usunięcie może się zdarzyć tylko pod sam koniec listy, to przepisanie
tych numerków nie będzie czymś strasznym (choć jest duża szansa, że
zupełnie niepotrzebnym). Ale jeśli zdarzają się usunięca na początku, to
co? Przepisywanie numerów w całej tabeli? Jeśli ma setki milionów rekordów,
to jest to już poważny problem. Nawet jeśli ma mniej, albo usuwanie trafia
się gdzieś w środku czy nawet na końcu, ale wystarczająco często, a system
jest obciążony, to znów mamy problem. Poza tym może być potrzeba trzymania
jakiejś historii, żeby wiedzieć, że od X do Y dokumentem o liczbie
porządkowej N był ten dokument, a później tamten. Ogólnie same komplikacje.

--
Michał Kuratczyk




Artur Muszynski - 14-11-2006 00:11

  Michał Kuratczyk wrote:
> Straszność zależy od wielu czynników i dlatego w dalszym ciągu
> uważam, że osoba pytająca powinna wyjaśnić dlaczego chce zrobić to,
> co chce zrobić.

Zgadzam się, bo numeracji dokumentów się nie przestawia, co by to nie było.

artur




Marcin - 14-11-2006 00:56

 
> Straszność zależy od wielu czynników i dlatego w dalszym ciągu uważam, że
> osoba pytająca powinna wyjaśnić dlaczego chce zrobić to, co chce zrobić.
> Jeżeli usunięcie może się zdarzyć tylko pod sam koniec listy, to
przepisanie
> tych numerków nie będzie czymś strasznym

Po prostu dla wygody w danym przypadku, rozwiązanie potrafię znaleźć sam ale
myślałem że zaproponujecie coś bardziej oryginalnego od mojego pomysłu, bazy
wykorzystuję rzadko jako że nie jest to moja dziedzina zainteresowań, tabela
zawierać będzie max. 20 rekordów także no problem, bo jakby miała zawierać
setki milionów :) jak piszesz to zdaję sobie sprawę że poprawianie każdego
rekordu w przypadku kasacji początkowych wierszy tabeli to byłaby masakra :)

Tak siak czy owak dzięki za zainteresowanie
Pozdrawiam




keczerad - 14-11-2006 00:56

  Marcin napisał(a):

> Po prostu dla wygody w danym przypadku, rozwiązanie potrafię znaleźć sam ale
> myślałem że zaproponujecie coś bardziej oryginalnego od mojego pomysłu, bazy
> wykorzystuję rzadko jako że nie jest to moja dziedzina zainteresowań, tabela
> zawierać będzie max. 20 rekordów także no problem, bo jakby miała zawierać
> setki milionów :) jak piszesz to zdaję sobie sprawę że poprawianie każdego
> rekordu w przypadku kasacji początkowych wierszy tabeli to byłaby masakra :)

zeby cos zproponowac i to cos oryginalnego trzeba wiedziec do czego to
ma sluzyc, niestety jako autor standartowego posta myslisz ze kazdy ma
najnowszy model szklaj kuli czytajacy w myslach piszacego posty, w tym
miejscu musze cie rozczarowac narazie niestac mnie na ten model ;).

--

keczerad

http://www.e-mo.com.pl
sklep w (X)HTML




Paweł Matejski - 14-11-2006 00:56

  Artur Muszynski wrote:
> Michał Kuratczyk wrote:
>> To niewiele zmienia. Tak czy inaczej trzeba to zrobić po prostu
>> szeregując operacje na tej tabeli, co często wiąże się z serializacją
>> dużej części systemu. Trzeba mieć cholernie dobry powód, żeby sobie
>> zrobić taką krzywdę. A ja tam osobiście staram się nie pomagać
>> ludziom w robieniu sobie krzywdy, dopóki mnie nie przekonają, że to
>> dla ich dobra. :->
>
> Przykład, który mnie często prześladuje, to "liczba porządkowa". Nie
> widzę innej sensownej możliwości, jak coś w stylu UPDATE ... WHERE
> lp=lp-1, ale też nie widzę niczego strasznego w takiej operacji.
> Oczywiście, nie jest to PK.

Liczba porządkowa jest potrzebna przy wynikach zapytania, nie przy
przechowywaniu danych. Sporo baz pozostawia ten problem klientowi, jednak
przyznaje, że czasami brakuje rozwiązania takiego jak rownum w oracle.

--
P.M.




Artur Muszynski - 14-11-2006 00:56

  Paweł Matejski wrote:
> Liczba porządkowa jest potrzebna przy wynikach zapytania, nie przy
> przechowywaniu danych. Sporo baz pozostawia ten problem klientowi,
> jednak przyznaje, że czasami brakuje rozwiązania takiego jak rownum w
> oracle.

Nie zastanowiłeś się. Jeśli klient chce uporządkować listę (np kategorie,
wiadomości) wg dowolnego widzimisię, to musisz l.p. przechowywać i
modyfikować w bazie.

artur




h5k - 14-11-2006 00:56

 
keczerad napisał(a):
> zeby cos zproponowac i to cos oryginalnego trzeba wiedziec do czego to
> ma sluzyc

LP... takie proste zagadnienie wydawać by się mogło, Ty jednak
potrzebujesz wiedzieć do czego służy liczba porządkowa... :)
Zbieraj szybko na tą szklaną kulę, wtedy wystarczy że będziesz
tylko czytał i już będziesz wszystko wiedział, teraz musisz czytać
ze zrozumieniem co jak widać sprawia Ci trochę kłopotów




Michał Kuratczyk - 14-11-2006 00:56

  h5k wrote:
> LP... takie proste zagadnienie wydawać by się mogło, Ty jednak
> potrzebujesz wiedzieć do czego służy liczba porządkowa... :)
> Zbieraj szybko na tą szklaną kulę, wtedy wystarczy że będziesz
> tylko czytał i już będziesz wszystko wiedział, teraz musisz czytać
> ze zrozumieniem co jak widać sprawia Ci trochę kłopotów
Zrozum, że świat jest trochę bardziej skomplikowany niż się Tobie wydaje.
Te same rzeczy dla różnych ludzi znaczą co innego. Te same problemy,
w zależności od różnych okoliczności, rozwiązuje się inaczej. Jeśli prosisz
kogoś o pomoc, a on nie znając Twojej sytuacji po prostu Ci odpowiada, to
możesz być pewien, że albo się nie zna na tym co mówi, albo odpowiada Ci na
odwal się. Może i będzie miał rację, bo przecież zepsuty zegar też czasem
dobrą godzinę pokazuje. Ale jeśli ktoś zadaje Ci pomocnicze pytania, żeby
odpowiedzieć z sensem NA TWOJE PYTANIE, to powinieneś być wdzięczny, a nie
zachowywać po chamsku.

--
Michał Kuratczyk




h5k - 14-11-2006 00:56

  > Ale jeśli ktoś zadaje Ci pomocnicze pytania, żeby
> odpowiedzieć z sensem NA TWOJE PYTANIE, to powinieneś być wdzięczny, a nie
> zachowywać po chamsku.
>

Nie mam pojęcia jak rozbić na atomy pojęcie "liczba porządkowa" i
jak ktoś zadaje "pomocnicze" pytania do tak banalnej rzeczy to n/c.
Lepiej chyba w ogóle nie odpisywać jak prezentować postawę
człowieka który zjadł wszystkie rozumy, jakbym napisał coś o
kolumnie "samochod" to by mnie przekonywał pewnie, a dlaczego nie
"kaktus" ? :)
Potrzebowałem mieć pole z czymś takim w tabeli i święto, przecież
nie będę się tu rozwodził i pisał postu na trzy ekrany tłumacząc
po co mi to.




Michał Kuratczyk - 14-11-2006 00:56

  h5k wrote:
> Nie mam pojęcia jak rozbić na atomy pojęcie "liczba porządkowa" i
> jak ktoś zadaje "pomocnicze" pytania do tak banalnej rzeczy to n/c.
"metalowa rurka" też jest bardzo prostym pojęciem/przedmiotem, ale spróbuj
wyciągnąć z kogoś znającego się na metalowych rurkach odpowiedź na
pytanie "jaka metalowa rurka jest najlepsza"... JEDYNA dobra odpowiedź na
takie pytanie, to "zależy do czego jej potrzebujesz". Jeżeli prezentujesz
postawę "nie interesuj się po co mi ta rurka, tylko powiedz jaka jest
najlepsza", to nie licz na sensowną pomoc. Nawet jeśli powiesz, że to ma
być metalowa rurka do silnika corvetty z 1977 roku, to nadal każdy
fachowiec zapyta Cię do czego DOKŁADNIE jest Ci ona potrzebna, bo może się
okazać, że Twój problem najlepiej rozwiązać rurką gumową na ten przykład.
A fachowiec od tuningu takich silników może Ci nawet powie, że lepiej nie
wsadzać tam tej rurki, tylko zupełnie inaczej połączyć elementy między
którymi ona była.

Na pocieszenie powiem Ci tylko, że nie jesteś jedyny, któremy wydaje się, że
na każde pytanie istnieje prosta odpowiedź. Przeczytaj sobie:
http://tkyte.blogspot.com/2006/07/i-...-only-two.html

--
Michał Kuratczyk




keczerad - 14-11-2006 00:57

  h5k napisał(a):

> LP... takie proste zagadnienie wydawać by się mogło, Ty jednak
> potrzebujesz wiedzieć do czego służy liczba porządkowa... :)
> Zbieraj szybko na tą szklaną kulę, wtedy wystarczy że będziesz
> tylko czytał i już będziesz wszystko wiedział, teraz musisz czytać
> ze zrozumieniem co jak widać sprawia Ci trochę kłopotów
>

k..., w pracy mam takiego, tfu... wizjonera, za kazdym razem wydaje mu
sie ze wszystko jest proste, bo on ma wizje, tylko od wizji do
realizacji daleka droga ! Nauczony doswiadczeniem wole wypytac zanim
zaczne robic, bo moze okazac sie ze trzeba obrac inna droge. Dlatego nie
boje zadawac sie pytania, wole zadac 10 razy te same pytanie i 10 razy
uslyszec ta sama odpowiedz niz zaczac robic co czego do konca sie nie
rozumiem. Praktycznie zawsze przy rozwiazaniu jakiegos z natury prostego
problemu spotyka sie po drodze 10 przypadków szczególnych i dwa mury,
których przeskaczyć się nie da tylko trzeba obejść. Zakladajac do tego
kogos niewielkie doswiadczenie (zadaje takie pytania ten ktos i nie
pisze do czego to stosuje), zadaje pytania naprowadzajce jak to mowia w
szkole :), a jesli ktos sie obruszy tak jak ty, robi to tylko na swoja
niekorzysc jeszce tego nie rozumiejąc.

EOT

--

keczerad

http://www.e-mo.com.pl
sklep w (X)HTML




Marcin - 14-11-2006 00:57

 
> "metalowa rurka" też jest bardzo prostym pojęciem/przedmiotem, ale spróbuj
> wyciągnąć z kogoś znającego się na metalowych rurkach odpowiedź na
> pytanie "jaka metalowa rurka jest najlepsza"... JEDYNA dobra odpowiedź na
> takie pytanie, to "zależy do czego jej potrzebujesz".

Ale ja nie pytam o metalową rurkę tylko o liczbę porządkową, która
zastosowanie ma bardzo powszechne, trzymanie czegoś w określonym porządku.
Dyskusja jest już bezcelowa bo jak powiedziałem znalazłem rozwiązanie,
wszystko jest cacy, miód, dziwki i orzeszki w jednym :)
A Ty wypatruj kolejnych postów gdzie będziesz mógł stosować swoje wyszukane
porównania i kwestionować to czy białe jest białe a czarne czy oby napewno
nie jest zielone.




Sławomir Szyszło - 14-11-2006 00:57

  Dnia Fri, 10 Nov 2006 09:59:39 +0100, "Artur Muszynski"
<arturm@union.wytnijto.com.pl> wklepał(-a):

>Nie zastanowiłeś się. Jeśli klient chce uporządkować listę (np kategorie,
>wiadomości) wg dowolnego widzimisię, to musisz l.p. przechowywać i
>modyfikować w bazie.

Ale wtedy nie są istotne kolejne wartości "co 1", wystarczy że będą w określonym
porządku.
--
Sławomir Szyszło mailto:slaszysz@poczta.onet.pl
Primus inter FAQires & Grand Inquisitor no.0 of pl.comp.bazy-danych
FAQ pl.comp.bazy-danych http://www.dbf.pl/faq/
Archiwum http://groups.google.com/groups?grou...mp.bazy-danych




Michał Kuratczyk - 14-11-2006 00:58

  Marcin wrote:
> o liczbę porządkową, która zastosowanie ma bardzo powszechne, trzymanie
> czegoś w określonym porządku.
Mylisz się, ale to Twój problem.

> Dyskusja jest już bezcelowa bo jak powiedziałem znalazłem rozwiązanie,
> wszystko jest cacy, miód, dziwki i orzeszki w jednym :)
Biorąc pod uwagę Twoje doświadczenie z bazami danych, to tak śmiałe
stwierdzanie "w moim kodzie nie ma błędów" jest bardzo ryzykowne.
Więc pewnie kiedyś się zdziwisz, że Ci się dane rozjechały, ale to Twój
problem.

> A Ty wypatruj kolejnych postów gdzie będziesz mógł stosować swoje
> wyszukane porównania i kwestionować to czy białe jest białe a czarne czy
> oby napewno nie jest zielone.
A prezentując takie podejście do ludzi, którzy próbują Ci pomóc, to raczej
wiele na tej grupie nie osiągniesc. Ale to już Twój problem. EOT.

--
Michał Kuratczyk
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [mysql] =?ISO-8859-2?Q?Za=E6mienie=2E=2E=2E_jak_wy=B6wietli=E6?==?ISO-8859-2?Q?=2E=2E=2E?= [mysql] =?ISO-8859-2?Q?wielko=B6=E6_bazy_a_stabilno=B6=E6=2C?==?ISO-8859-2?Q?_podzia=B3_du=BFej_bazy_a_powi=B1zania_tabel?= [MySQL] =?ISO-8859-2?Q?Wy=B6wietlenie_kolejnej_pozycji=2C_?==?ISO-8859-2?Q?jak=B1_mia=B3by_dany_rekord=2C_gdybym_czyta=B3 _?==?ISO-8859-2?Q?wg_konkretnych_kryteri=F3w=2E_Da_si=EA_=3F?= [mysql 4.0.x] przenoszenie kolum =?ISO-8859-2?Q?mi=EAdzy_bazam?==?ISO-8859-2?Q?i_cd_=2E=2E=2E_?= [MySQL] =?ISO-8859-2?Q?z=B3=B1czenie_tabeli_u=BFytkownik_i?==?ISO-8859-2?Q?_zdj=EAcia_z_wyborem_zdj=EAcia_domy=B6lnego?= [MySQL] Jak =?ISO-8859-2?Q?wpisa=E6_do_tabeli_pozycje_dl?==?ISO-8859-2?Q?a_wierszy_gdybym_te_wiersze_wybiera=B3_w_ok?== ?ISO-8859-2?Q?re=B6lonej_kolejno=B6ci_=3F?= Gdzie MySQL 4.1, a gdzie 5.0? [MySQL 4.0...4.1] zabezpieczenie przed =?ISO-8859-2?Q?jednoczesn?==?ISO-8859-2?Q?=B1_edycj=B1?= [MS SQL] "set names" (mySQL) w MS SQL [mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • tejsza.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com