![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam tabelę logi. Do tej tabeli zapisywany jest login, data i godzina logowania oraz wylogowania użytkownika. Klucz główny tej tabeli ustawiłem na BIGINT. Chcę aby admin miał możliwość okresowego kasowania tych logów. Wiem, że można zmienić wartość licznika AUTO_INCREMENT tylko nie pamiętam jak.
Jeśli w tabeli będę miał 50 wpisów i wszystkie usune, a później dodam jakiś to wartość klucza głównego będzie wynosić 51. Moje pytanie: Jak zmienić, żeby wstawiało znowu od wartości 1? I czy to przestawienie nie wpłynie na inne tabele? EDIT: _____ Sprawa ma się tak. Do zmiany wartości AUTO_INCREMENT służy polecenie Wszystkie wpisuje z palca Ale pojawił się inny problem. Utwozyłem sobie drugą bazę:
A potem ładuje takie dane:
![]() Teraz sprawdzamy numerek klucza:
i otrzymujemy wynik 2. Spróbujmy zmienić ten numerek.
I wypełniamy dabnymi:
Teraz sprawdzamy numerek klucza:
i otrzymujemy wynik 10. DZIAŁA ![]() Aler na mojej bazie (siększej, gdzie mam posutawiane klucze obce), polecenie wypisuje cały czas wartość 0. Natomiast niby wykonane pomyślnie ale nie zmienia wartości. Czy ktoś wie dlaczego? Ten post edytował J4r0d 3.05.2005, 15:27:11 -------------------- ”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335) |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
Dziwne bo takie cos sie gdzies indziej stosuje.
Wykorzystaj cos takiego
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(SongoQ @ 2005-05-03 16:49:28) Dziwne bo takie cos sie gdzies indziej stosuje. Wykorzystaj cos takiego
A gdzie np? -------------------- ”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335) |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
Np podczas dodawania rekordu.
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 245 Pomógł: 4 Dołączył: 22.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Hmm.. jeżeli chcesz żeby Admin miał możliwośc co jakiś czas kasowania wszystkich rekordów to polecam zapytanie
takie zapytanie wyrzuca wszystkie rekordy z tabeli a także resetuje działanie funkcji AUTO INCREMENT ustawiając licznik na 1 ![]() Pozdrawiam |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Diwi @ 2005-05-04 18:59:45) Hmm.. jeżeli chcesz żeby Admin miał możliwośc co jakiś czas kasowania wszystkich rekordów to polecam zapytanie takie zapytanie wyrzuca wszystkie rekordy z tabeli a także resetuje działanie funkcji AUTO INCREMENT ustawiając licznik na 1 ![]() Pozdrawiam Żeczywiście zapomniałem o tej instrukcji. Jest efektywniejsza. Dodam tylko, że pomimo zapewnień autorów pewnej ksiązki, instrukcja ta jest obsługiwana przez transakcje - czyli da się cofnąć.. @Diwi: sprawdzałem - primary key nie jest automatycznie ustawiany na 1 -------------------- ”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335) |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
@J4r0d
Cytat @Diwi: sprawdzałem - primary key nie jest automatycznie ustawiany na 1 Primary key sie nie ustawia tylko wartosc autoindex(auto_increment). Mozesz ewntualnie po TRUNCATE TABLE `tabela` wywolac ALTER TABLE `tabela` TYPE = InnoDB wtedy wartosc ustawi sie na 1. Oczywiscie to dla InnoDB http://dev.mysql.com/doc/mysql/en/innodb-f...ragmenting.html -------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(SongoQ @ 2005-05-09 20:27:28) @J4r0d Cytat @Diwi: sprawdzałem - primary key nie jest automatycznie ustawiany na 1 Primary key sie nie ustawia tylko wartosc autoindex(auto_increment). Mozesz ewntualnie po TRUNCATE TABLE `tabela` wywolac ALTER TABLE `tabela` TYPE = InnoDB wtedy wartosc ustawi sie na 1. Oczywiscie to dla InnoDB http://dev.mysql.com/doc/mysql/en/innodb-f...ragmenting.html Chodziło mi o wartość. Po Truncate wykonuje
Pozdrawiam -------------------- ”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 12:09 |