• 9 odgovora
  • 4.499 pregleda
Reset tablice mssql 22.12.2006. u 07:20 · pre 241 meseci #1
Sta mi se desava cudno a ne znam kako da to poništim. Kako mi je PK autoincrement, e sad ja nešto testiram i vazda nešto dodajem, i td. Ali kad ja obrišem podatke iz tablice on mi nastavlja da piše od recimo broja 45, a ja bih volio da krene od 1. Kako da resetiram tablicu da počima pisati od 1 jer mi je jako važno d apiše od 1? Inače koristim MSSQL i C# pa ako je moguće preko onog server menagement studia

Hvala
Re: Reset tablice mssql 22.12.2006. u 12:26 · pre 241 meseci #2
Pitanje ti vese spada pod MS SQL forum.
Za resetovanje najbolje pogledaj BOL. Imas DBCC komandu
Code:

DBCC CHECKIDENT (imeTabele, RESEED,1)
Re: Reset tablice mssql 22.12.2006. u 12:53 · pre 241 meseci #3
Ma tamo sam već jednom pitao i slabo su nešto kolegijalni. Zamolio bih te da ako mozes malo vise da mi objasnis molim te, jer stvarno mi je potrebno. Hvala ti svakako

Re: Reset tablice mssql 22.12.2006. u 13:14 · pre 241 meseci #4
Ako hoces sve da obrises iz tabele i i da odmah resetujes ID uradi ..

TRUNCATE TABLE tabela

ne moze bas uvek... usostalom otvori "Books Online" nadam se da znas na sta mislim i nadji opis...
predpostavljam da tamo nisu kolegijalni zato sto niko nece da se smara glupostima koje mozes sam naci uz vrlo malo truda.

Koliko ti pitanja dnevno postavis ? ove moje kolege ovde na poslu u NS ti vec ime znaju napamet ;-)
Potpis
Ja verujem da svim elektricnim stvarima dim daje zivot, kad ih on jednom napusti tesko da ce vise ikad da rade.
Re: Reset tablice mssql 22.12.2006. u 13:37 · pre 241 meseci #5
Ne znam na koji deo mislis da objasnim posto je mislim dosta jasno. Sve sto treba da zamenis je ono 'ImeTabele' i dobices to sto si trazio.
Re: Reset tablice mssql 22.12.2006. u 15:21 · pre 241 meseci #6
hahahhaha, čuli ime mi znaju, hahhahha.

Ma tko pita ne skita, ali vjeruj mi da sam i sam već našao ovo TRUNCATE TABLE. No iako sam uradio drugačije, pa sad nek ID ide koliko hoće sad ja fino dodajem ručno ali kako: pa fino pobrojim koliko imam redaka u datagridu kojeg sam prethodno fillovao samo nako i onda dodam jedinicu i tako.

Pozdravi kolege, i reci im da više rade a manje surfaju :) :) :), ma šalim se. Da ti nije kolega đe bi mi kraj bio.
Re: Reset tablice mssql 22.12.2006. u 15:27 · pre 241 meseci #7
Pozdrav od kolege :)

pa super si ti to zamislio, ali sta se desava ako nekoga u medjuvremenu obrises?

Tabela sadrzi sledece slogove:

ID Name
-------------
1 Pera
2 Mika
3 Zika

Obrises Miku (ID=2). Sad hoces da dodas novog. Po tvojoj logici ID ce mu biti 3, a takvog vec imas!!!

Nazad u radionicu :)






Potpis
nije lepo da budem lud a da to ne znam
Re: Reset tablice mssql 22.12.2006. u 19:12 · pre 241 meseci #8
Redni broj sloga u resultujućem setu slogova i primarni ključ nisu isto.

Nema apsolutno razloga da primarni ključ stalno menjaš i resetuješ na 1.

Zato, ostavi ga na miru :) a ovde napiši šta ti tačno treba i u kakvim okolnostima - zašto od jedan, kada, i zbog čega?
Potpis
http://www.vesic.org | Blog: http://www.vesic.org/blog | Programming:
http://www.vesic.org/english/blog
Re: Reset tablice mssql 22.12.2006. u 20:21 · pre 241 meseci #9
pa ovako, malo se igram sa izdavanjem računa i sad želim da mi se svaki put kad pokrenem jednu formu upiše u bazu novi broj računa (tj. PK) i da je to zapravo broj računa. e sad sam ja nešto testirao i klikao i klikao i dogurao do 150, treba mi da ide opet od 1 jer mi remeti ostale planove. Zatim imam u tablici stavka koja se nalazi između artikla i računa isti slučaj.


e šta sam sad ja radio kako bih to zaobišao sa tablicama. Ja napravim obični datagrid i fillujem ga. Prebrojim sa Datarow.count koliko imam redaka u tablici i onoliko koliko imam uvećam za jedan i to mi je novi broj računa. :) malo smješno ali šta se može

Iako ovaj drugi pasus nije dobar jer ja nisam razmišljao šta ako obrišem jedan račun, pa kad budem brojit koliko ih imam i potrefi recimo da imam broj tri, a kad izvšim operaciju zbrajanja to daje 3, e šta onda :)
Re: Reset tablice mssql 23.12.2006. u 07:47 · pre 241 meseci #10
Napraviš stored proceduru koja insertuje slog u tabeli računa, i koja radi otprilike ovo:

Set NoviBroj = Select Max(BrojRacuna) from Racuni
NoviBroj = NoviBroj +1

Insert into Racuni (BrojRacuna) Values (NoviBroj)

SELECT SCOPE_IDENTITY()

Iz programa uvek izvršiš proceduru, ona ti vrati primarni ključ (ovaj poslednji red) a ti onda radiš update

Potpis
http://www.vesic.org | Blog: http://www.vesic.org/blog | Programming:
http://www.vesic.org/english/blog
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme