Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako da se inkrementira ID (primary key) samo prilikom unosa u bazu

[es] :: MySQL :: Kako da se inkrementira ID (primary key) samo prilikom unosa u bazu

[ Pregleda: 2911 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

korisnicko_ime

Član broj: 38909
Poruke: 113
*.itsnet.info.



+3 Profil

icon Kako da se inkrementira ID (primary key) samo prilikom unosa u bazu03.02.2007. u 13:41 - pre 208 meseci
Dakle imam sledeci problem

Radi se o tabeli korisnici u kojoj je primarni kljuc kolona ID koja treba da se automatski inkrementira.
Program koji poziva bazu je java servlet.Upit bazi radi dobro jedan put i upit izgleda ovako

Code:
upis = "insert into korisnici values ('"+id+"','"+ime+"','"+prezime+"','"+korIme+"','"+lozinka+"','"+admin+"','"+email+"')";


Kada se jednom izvrsi, sve je ok, medjutim kada korisnik ponovo dodje da se registruje pojavi se greska "Duplicate entry '25' for key 1"

Moje pitanje glasi, na koji nacin da postavim upit da mysql automatski inkrementira vrednost polja id, a da ga ja ne unosim.Probao sam u okviru mog programa da stavim id++; ali nije pomoglo.Ne znam da li je ovo pitanje za mysql ili java forum, ali svaka pomoc je dobrodosla.
 
Odgovor na temu

zmau
Dragan Jovanović
programer
Šabac

Član broj: 80834
Poruke: 290
212.200.123.*



+80 Profil

icon Re: Kako da se inkrementira ID (primary key) samo prilikom unosa u bazu04.02.2007. u 00:29 - pre 208 meseci
Pitanje je definitivno za ovaj forum. Rešenje ze zove autoinc. Primer iz jedne moje baze :
Code:

CREATE TABLE `user` (
  `id` bigint(20) NOT NULL auto_increment,
  `username` char(20) default NULL,
  `password` varchar(255) default NULL,
  `ime` varchar(50) default NULL,
  `userTypeId` bigint(20) NOT NULL default '0',
  PRIMARY KEY  (`id`),
  KEY `FKIndex1` (`userTypeId`),
  CONSTRAINT `Ref_01` FOREIGN KEY (`userTypeId`) REFERENCES `usertype` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Onda u insert komandi možeš slobodno da proslediš null kao vrednost id polja :
Code:

insert into `user` (`id`,`username`,`password`,`ime`,`userTypeId`) 
values (null,'igor','120182133783417192121746117241185328215049317962','',1)

a server će već znati šta da radi s tim.
it works on my machine
 
Odgovor na temu

korisnicko_ime

Član broj: 38909
Poruke: 113
*.itsnet.info.



+3 Profil

icon Re: Kako da se inkrementira ID (primary key) samo prilikom unosa u bazu04.02.2007. u 02:09 - pre 208 meseci
zmau mnogo ti hvala na odgovoru, sada sve radi fino.

Prosto ne mogu da verujem da sam bio blizu resenja pogresio sam stavljao sam `null` trebalo je bez `

Sada mi aplikacija radi super, hvala jos jednom.
 
Odgovor na temu

[es] :: MySQL :: Kako da se inkrementira ID (primary key) samo prilikom unosa u bazu

[ Pregleda: 2911 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.