ďťż
 
[mysql] =?ISO-8859-2?Q?unikalno=B6=E6_pola_Id?= ďťż
 
[mysql] =?ISO-8859-2?Q?unikalno=B6=E6_pola_Id?=
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

[mysql] =?ISO-8859-2?Q?unikalno=B6=E6_pola_Id?=



Gerwazy - 18-06-2006 00:44
[mysql] =?ISO-8859-2?Q?unikalno=B6=E6_pola_Id?=
  Mam w bazie takie sytuacje, gdzie bywa, że numery pól Id (autoincrement)
powtarzają się. To znaczy, miałem np. użytkownika o Id 40. Później
bawiłem się (co prawda na żywca) bazą i usunąłem kilku ostatnich.
Aplikacja natomiast, po wypełnieniu formularza wrzuciła mi do bazy
użytkownika nadając mu nr. 39. Jak zabezpieczyć się, aby baza już nigdy
nie używała ponownie tych samych numerów?





Xorock - 18-06-2006 00:44

  Gerwazy napisał(a):
> Mam w bazie takie sytuacje, gdzie bywa, że numery pól Id (autoincrement)
> powtarzają się. To znaczy, miałem np. użytkownika o Id 40. Później
> bawiłem się (co prawda na żywca) bazą i usunąłem kilku ostatnich.
> Aplikacja natomiast, po wypełnieniu formularza wrzuciła mi do bazy
> użytkownika nadając mu nr. 39. Jak zabezpieczyć się, aby baza już nigdy
> nie używała ponownie tych samych numerów?
unique index
a tu powinien byc primary key




Gerwazy - 18-06-2006 00:44

  Xorock napisał(a):

> unique index
> a tu powinien byc primary key

no właśnie niby tak mam, sam już teraz nie wiem - może coś ręcznie
namieszałem :(




kubik - 19-06-2006 01:58
=?iso-8859-2?q?Re:_unikalno=B6=E6_pola_Id?=
 
Gerwazy napisał(a):

> no właśnie niby tak mam, sam już teraz nie wiem - może coś ręcznie
> namieszałem :(
Jeżeli faktycznie pole jest autoincrement, to wina leży po stronie
aplikacji - jest najwyraźniej zwalona - być może zamiast
pozostawiać wybór ID silnikowi bazy danych sama jawnie podaje to ID
(pobierając wcześniej np. MAX(ID)).

pozdrawiam
Adam Kubiczek





Przemyslaw Popielarski - 19-06-2006 01:58

  Gerwazy wrote:
> Mam w bazie takie sytuacje, gdzie bywa, że numery pól Id
> (autoincrement) powtarzają się. To znaczy, miałem np. użytkownika o
> Id 40. Później bawiłem się (co prawda na żywca) bazą i usunąłem kilku
> ostatnich. Aplikacja natomiast, po wypełnieniu formularza wrzuciła mi
> do bazy użytkownika nadając mu nr. 39. Jak zabezpieczyć się, aby baza
> już nigdy nie używała ponownie tych samych numerów?

Innodb tak ma i po restarcie serwera utworzy Ci indeks max(kolumna)+1. Uzyj
MyISAM i autoincrement na pojedynczej kolumnie jesli Ci to nie odpowiada.

--
../ premax
../ premax@hot.pl
../ koniec i bomba, a kto czytal ten traba. w.g.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    Gdzie MySQL 4.1, a gdzie 5.0? [MS SQL] "set names" (mySQL) w MS SQL oracle -> oracle lub oracle -> mysql replikacja - programy [MySQL] Zwrot tego, co pasuje i nie pasuje :-/ [pgsql] Dostosowanie składni MySQL 5.0 -> PGSQL 8.1 [mysql] galeria zdjec - numerowanie zdjec [MySQL] Zapytanie z pliku , wynik do pliku [mysql] CONCAT agregujący, ale nie GROUP_CONCAT() mysql data 0000-00-00 na koniec [MySQL] Problem z zapisem danych w bazie danych
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • wawa19wwa91.pev.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