Avatar billede supermand69 Nybegynder
23. juli 2002 - 01:57 Der er 15 kommentarer og
1 løsning

Kan kun klare 999 records...

Hej

Jeg har lige lavet en "FTP-skanner" som laver en komplet liste over alle mapper og undermapper, men så snart min db rammer de 999 records kører den ikke længere...

Der er omkring 2.100 filer i det hele som skal skannes

Min db-struktur:
CREATE TABLE test (
  id int(5) NOT NULL auto_increment,
  dir varchar(60) NOT NULL default '',
  file varchar(60) NOT NULL default '',
  PRIMARY KEY  (id),
  KEY dir (dir,file)
)
Avatar billede flax Nybegynder
23. juli 2002 - 09:50 #1
test
Avatar billede flax Nybegynder
23. juli 2002 - 09:50 #2
ændre din int(5) til tekst
Avatar billede myplacedk Nybegynder
23. juli 2002 - 10:20 #3
Ignorer flax, han aner ikke hvad han snakker om.

Men så vidt jeg kan se skulle du kunne få op til 99.999 rækker, eller i hvert fald 49.999...

Hvilken id har den sidste række?

SELECT MAX(id) AS sidste FROM test
Avatar billede flax Nybegynder
23. juli 2002 - 11:49 #4
myplacedk >> Når nej jeg havde kun samme problem med tinyint..

Ved du selv hva du snakker om? Der er jo liiiiiiiiiiiiiiige lovlig meget forskel fra 49.999 til 99.999 rækker....
Avatar billede myplacedk Nybegynder
23. juli 2002 - 12:01 #5
Sorry, det kunne godt have været formuleret en del pænere. :)
Men ærligt talt, så er det en rigtig dårlig ide at bruge tekst-typer til numre. Jeg ved faktisk ikke lige om auto_increment overhovedet vil virke.

Og forskellen på 2 gange er ikke så stor i denne sammenhæng. Især ikke når jeg snakker 50-100 tusinde, og hans problem ligger ved ét tusinde.

Jeg kunne godt slå op præcist hvor grænsen går, men i først vil jeg gerne have svar på mit spørgsmål.
Avatar billede flax Nybegynder
23. juli 2002 - 12:08 #6
:-)
Avatar billede mortenfn Nybegynder
23. juli 2002 - 12:45 #7
int(5) kan kun klare 999
int(6) kan klare 9999

men normalt sættes int() sådan
Avatar billede myplacedk Nybegynder
23. juli 2002 - 12:56 #8
Hvad er logikken i det? (Seriøst spørgsmål)
Det er hverken bits eller cifre...

Anyway, supermand69, løsningen er at sætte størrelsen på feltet op. (Som mortenfn næsten sagde)
Avatar billede flax Nybegynder
23. juli 2002 - 13:26 #9
hvem har sagt det skulle være logisk... :-)
Avatar billede mortenfn Nybegynder
23. juli 2002 - 13:41 #10
ikke næsten
Avatar billede supermand69 Nybegynder
23. juli 2002 - 14:26 #11
Ok...

Jeg troede bare at når man skrev int(5) at det så ville sige at der i alt kunne være 5 cifre (99999)
Avatar billede mortenfn Nybegynder
23. juli 2002 - 14:30 #12
5 byte ikke 5 pladser
Avatar billede supermand69 Nybegynder
23. juli 2002 - 14:31 #13
nu har jeg så ændret int til 11, men den stopper stadig ved 999
Avatar billede mortenfn Nybegynder
23. juli 2002 - 16:42 #14
du har: KEY dir (dir,file)

nu er der vel ikke gengangere her

jeg ville gøre sådan : PRIMARY KEY  (id)
Avatar billede mortenfn Nybegynder
23. juli 2002 - 16:43 #15
glem det sidste så ikke ordenligt efter
Avatar billede supermand69 Nybegynder
14. oktober 2002 - 18:51 #16
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester