Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MYSQL]Przeskakujaca wartosc auto_increment
tweety_master
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 24.09.2008

Ostrzeżenie: (0%)
-----


Witam, serdeczna prosba o pomoc.

Dzis zauwazylem, ze kolejne wiersze, ktore sa dodwane do tabeli w wierszu 'lp', ktory ma ustawiona opcje auto_increment nie sa numerowane kolejnymi liczbami, a liczbami z przeskokiem 10...

Dzieje sie tak zarowno przy dodwaniu przez formularz, jak i przez phpMyAdmin.

Znalazlem na forum dwa tematy, ale takm problem nie zostal rozwiazany - autor sie poddal.

Jezeli chodzi o dodwanie przez formularz to kod wyglada nastepujaco

  1. <?php
  2. $lp=$HTTP_POST_VARS['lp'];
  3.  
  4. ...;
  5.  
  6. $lp=addslashes($lp);
  7.  
  8. ...;
  9.  
  10. $lp=trim($lp);
  11.  
  12. ...;
  13.  
  14. $zapytanie = "insert into m2  (lp, ...)";
  15.  
  16. VALUES ('$lp', ...);
  17. ?>


Wlasciwosci kolumny w tabeli:
  • Typ: int (10)
  • NULL: nie
  • Dodatkowo: auto_increment

Wczesniej dzialalo bez problemu, wartosci byly kolejnymi liczbami, teraz na serweze jest MySQL: 5.0.27 (byla zmiana) i wartosci przeskakuja o 10.

Nie jest to jakis straszny problem, ale bede wdzieczny za wszelka pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
artur_dziocha
post
Post #2





Grupa: Zarejestrowani
Postów: 320
Pomógł: 53
Dołączył: 18.09.2007
Skąd: Radom

Ostrzeżenie: (0%)
-----


nie dodaj do lp
samo sie inkrementuje
Go to the top of the page
+Quote Post
tweety_master
post
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 24.09.2008

Ostrzeżenie: (0%)
-----


Nie do konca rozumiem? wyrzucic lp z zapytania i wyrzucic z values?
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




  1. <?php
  2. $lp=$HTTP_POST_VARS['lp'];
  3. ?>

Działa Ci to w ogóle...? Mam wątpliwości.

Poza tym, jak ~artur_dziocha zauważył, nie uwzględniaj tej kolumny w zapytaniu; MySQL sobie sam poradzi.
Go to the top of the page
+Quote Post
tweety_master
post
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 24.09.2008

Ostrzeżenie: (0%)
-----


Cytat(erix @ 21.02.2009, 14:37:17 ) *
  1. <?php
  2. $lp=$HTTP_POST_VARS['lp'];
  3. ?>

Działa Ci to w ogóle...? Mam wątpliwości.




Dziala, dziala jak najbardziej, zostalo tak dodane kilka tysiecy rekordow.


Cytat(erix @ 21.02.2009, 14:37:17 ) *
Poza tym, jak ~artur_dziocha zauważył, nie uwzględniaj tej kolumny w zapytaniu; MySQL sobie sam poradzi.


Po usnieciu z zapytania lp i '$lp' jest dokladnie to samo. Zreszta jak pisalem, w momencie dodawania jakiegokolwiek wpisu przez phpMyAdmina lp rowniez wzrasta o 10, wiec to nie moze byc tylko wina kodu. 
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Dziala, dziala jak najbardziej, zostalo tak dodane kilka tysiecy rekordow.

Ale ustawienie, które aktywuje tę zmienną domyślnie jest wyłączone od którejś wersji PHP. Jeśli zmieniono konfigurację php.ini, nie będzie miało prawa działać.

A pokaż wynik zapytania show create table tabela.
Go to the top of the page
+Quote Post
tweety_master
post
Post #7





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 24.09.2008

Ostrzeżenie: (0%)
-----


Wynik zapytania

CODE
CREATE TABLE `m2` (



`lp` int(11) NOT NULL auto_increment,

`m1_name` varchar(11) default NULL,

`m2_name` varchar(11) default NULL,

`source` int(11) default NULL,

`collected_date` varchar(10) default NULL,

`isolation_box` int(5) default NULL,

`isolation_rzad` varchar(2) default NULL,

`isolation_kolumna` int(2) default NULL,

`isolation_date` varchar(10) default NULL,

`isolation_quantity` varchar(250) default NULL,

`isolation_quality` varchar(250) default NULL,

`phenotyp_coleoptile` varchar(250) default NULL,

`phenotyp_first_leaf` varchar(250) default NULL,

`phenotyp_pigmantation` varchar(250) default NULL,

`phenotyp_rosette` varchar(250) default NULL,

`phenotyp_tillers` varchar(250) default NULL,

`phenotyp_heading` varchar(10) default NULL,

`phenotyp_spike` varchar(250) default NULL,

`phenotyp_others` varchar(250) default NULL,

`post_clum` varchar(10) default NULL,

`post_spike` varchar(10) default NULL,

`post_awn` varchar(10) default NULL,

`post_tillers` varchar(10) default NULL,

`post_fertility` varchar(15) default NULL,

`post_seed_m3` int(10) default NULL,

`post_weight_seed_m3` varchar(11) NOT NULL default '0',

`post_others` varchar(250) default NULL,

PRIMARY KEY (`lp`),

UNIQUE KEY `unikalny` (`m1_name`,`m2_name`),

KEY `unikalny_box` (`isolation_box`,`isolation_rzad`,`isolation_kolumna`)

) ENGINE=MyISAM AUTO_INCREMENT=14066 DEFAULT CHARSET=latin2
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 09:02