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

triger za insert

[es] :: MS SQL :: triger za insert

[ Pregleda: 3790 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

212.194.193.212
Diavoli GG

Član broj: 68353
Poruke: 61
..shall-bg.customer.sbb.co.yu.



Profil

icon triger za insert08.02.2006. u 21:49 - pre 220 meseci
nisam do sada radio sa trigerima, pa me zanima kako bih povezao dve tabele, naime imam tabelu proizvod, i stavkuproizvoda, koja je naravno slab objekat u odnosu na proizvod. Sa druge strane imam tabelu korpa. E sad korpa je povezana sa stavkomproizvoda, tako shto sadrzi njen id,

pitanje

poshto se chesto ubacuju nove cene proizvoda(zbog chega sam i napravio stavku) kako da u tabeli korpa uvek uzima posldnji id stavke, tachnije "najsveziji"


npr

Prvo

tabela korpa
id idStvake
7 1

tabela stavkaproizvoda
idProizvoda idStavke cena
1 1 100

a zatim posle ubacivanaj novog reda u stvaku

tabela korpa
id idStvake
7 2

tabela stavkaproizvoda
idProizvoda idStavke cena
1 1 100
1 2 110


ako ima neki slichan primer negde , uputite me na tu adresu da se necimate

sya


 
Odgovor na temu

Fedya
Fedor Hajdu
Solution Architect
Emaratech
Dubai, UAE

Član broj: 28246
Poruke: 790
*.ADSL.neobee.net.

Jabber: fedya@elitesecurity.org
Sajt: devtechgroup.com


+34 Profil

icon Re: triger za insert16.02.2006. u 18:08 - pre 220 meseci
S obzirom da ti niko ne odgovara znaci da nisam jedini kome nije jasno sta si hteo da pitas.
Hajde pojasni...
Every hamster has his day.
 
Odgovor na temu

212.194.193.212
Diavoli GG

Član broj: 68353
Poruke: 61
..shall-bg.customer.sbb.co.yu.



Profil

icon Re: triger za insert17.02.2006. u 16:33 - pre 220 meseci
postoje dve tabele A, B i C,. e sada red B predstvlja slabi objekat, stvaka objekta A,. e sada redovi tabele C vide ID od odgovarajuceg reda tabele A i odgovarajuce stvake B, tachnije poslednji red u B.

Pitanje:

Kada se doda novi red u slabom objektu-B, kako da sada redovi C-a geldaju na poslednji red B??
 
Odgovor na temu

Zidar
Canada

Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: triger za insert17.02.2006. u 16:59 - pre 220 meseci
Ajde da vidimo da li smo razumeli.

1) Imas dakle tabelu Proizvodi, gde su opisani proizvodi, ali bez cene.

2) Cena za sve proizvode se upisuje u tabelu StavkaProizvoda, kad god se promeni cena, dopise se jedan rekord u tabelu StavkaProizvoda (ProizvodID, Datum, cena)

3) Imas tabelu Korpa. U korpu se ubacju proizvodi, sa cenom. Cena koja ide sa proizvodom u korpu treba da je poslednja cena iz tabele StavkaProizvoda.

Na kraju, tvoje pitanje otprilike glasi: Kako utvrditi koja je cena poslednja za dati proizvod u trenutku ubacivanja u korpu

Je li to sta hoces da uradis? Ako jeste, daj nam skripte za tabele, da vidimo kako se polja zovu i kog su tipa i slicno, to bi nam pomoglo kad pisemo trigger.

I molim te potvrdi da to radis u MS SQL.
 
Odgovor na temu

212.194.193.212
Diavoli GG

Član broj: 68353
Poruke: 61
..shall-bg.customer.sbb.co.yu.



Profil

icon Re: triger za insert17.02.2006. u 21:28 - pre 220 meseci
da da to je to,. to je pitanje,.. tabele nisam josh nipravio,,.neko sam samo razmishljao kao da izprojektujem bazu,., tako da ako mozesh napishi mi trigere i slobodno stavi atribute koji tebi odgovaraju,. najjednostavnije, naprimer za proizvod samo naziv i di i sl.. da bih video sushtinu, mislim na triggere,,., posle cu ja to priemniti na ostalo, slozenije i sl..,.


hvala puno


ako je bash neophodno,. ispisacu onda kasnije polja i tipove atributa??
 
Odgovor na temu

Zidar
Canada

Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: triger za insert20.02.2006. u 14:34 - pre 220 meseci
Ako ne postoje tabele, ne mogu da ti napisem trigger, osim da sam kreiram tabele, za sta neam vremena. Ukoliko si pocetnik, a nesto mi govori da nisam pogresio, savetujem ti da promenis zamisljeni dizajn baze. Nista nije lose u ideji koju imas, izgleda mi veoma cisto sa stanovista normalizacije. Ima samo jedan problem, tesko se implementuje.

Promenjeni dizajn: Ako cuvas trenutnu cenu u tabeli Artikli, svaki artikl u datom momentu imace samo jednu trenutnu cenu. Sada, imaj i u tabeli Korpa cenu artikla. kad ubacis artikl u korpu, prepisi iz tabele Artikli trenutnu cenu. Za ovo ti ne treba trigger, vec se to radi u INSERT naredbi koja ubacuje artikl u korpu.

tblArtikli (ArtklID=PK, NazivArtikla, TrenutnaCena)
tblKorpa (KorpaID=PK IDENTITY, ArtiklID, CenaUTrenutkuProdaje)

Skripta koja odradjuje posao:

DECLARE @ArtikliID int
SET @ArtiklID=27
INSERT INTO tblKorpa
(ArtiklID, CenaUTrenutkuProdaje)
SELECT ArtiklID, TrenutnaCena
WHERE ArtiklID=@ArtiklID

Ova skripta moze da se pretvori u STORED PROCEDURE, pa se proceduri prosledi parametar @ArtiklID. Verovatno ces tako i implementovati ubacivanje artikla u korpu, pomocu stored procedure. Onda tvoja web aplikacija pozove tu stored proceduru i ubaci artikl u korpu.

Kakav god da je tvoj dizajn, unutar stored procedure mozes da pokupis sve podatke koji ti trebaju i onda odradi INSERT INTO tblKorpa.

Bez zavrsenog logickog dizajna baze nema nista. Napravi logicki model, pa onda visi sta ces. Bice ti lakse ako na listu papira nacrtsa semu baze sa vezama izmedju tabela. Onda na lsitu papira ubaci nekoliko rekorda u tblArtikli (i tblArtyikliStavke) pa posmatraj sta treba da se odakle uzme i unaci u tblKorpa.

Zakljucujem da ti nikakvi triggeri ovde ne trebaju. Stored procedures, mozda, ali triggeri ne.
 
Odgovor na temu

[es] :: MS SQL :: triger za insert

[ Pregleda: 3790 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

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