Forum » Programiranje » Stored procedure-kdo lahko pomaga???
Stored procedure-kdo lahko pomaga???
Terminator ::
Naslednja naloga se navezuje na ms sql server:
1.)
Kurzor:
Navodilo za to nalogo:
1)ustvarit temp tabelo, ki ima naslednja polja:
ime CHAR(30),
priimek CHAR(30),
vrednostCelotneNjegoveProdaje Float,
pribitek Float
2)v temp tabelo napolnit z podatki in sicer:
- Kurzor je potrebno napolnit z imenom zaposlenega, priimkom in seštevek posameznega zaposlenega (SUM(freight))
- potrebno it čez tabelo in naredit obdelavo -> vpisat v temp tabelo znesek, ter ostale podatke(ime, priimek,vrednostCelotneNjegoveProdaje, pribitek) po naslednjem pravilu:
IF(@vrednostProdaje > 10000) , seštej ta znesek ki si ga dobil od posameznega zaposlenga * 10%
in vpiši to vrednost in pa pribitek v temp tabelo.
(@vrednostCelotneNjegoveProdaje = @vrednostProdaje * 10% + @vrednostProdaje
@pribitek = 10)
v nasprotnem primeru pa namesto *10%, daj * 2%, se pravi:
(@vrednostCelotneNjegoveProdaje = @vrednostProdaje * 2% + @vrednostProdaje
@pribitek = 2)
(poglej stavek INSERT INTO)
//Primer Kurzorja:
declare Kurzor cursor
for
select polje1, polje2 from tabela
open Kurzor
fetch next from Kurzor into
@polje1,@polje2
while @@fetch_status = 0
begin
-- tu delaš kar pač imaš za narediti s podatki
fetch next from Kurzor into
@polje1,@polje2
end
close Kurzor
deallocate Kurzor
2.)Sestavi stored proceduro, ki prejme kot parameter employeeID int in vrne seštevek naročil za eno osebo. Tabela je orders, polje za seštevek pa freight...(SUM(freight))
1.)
Kurzor:
Navodilo za to nalogo:
1)ustvarit temp tabelo, ki ima naslednja polja:
ime CHAR(30),
priimek CHAR(30),
vrednostCelotneNjegoveProdaje Float,
pribitek Float
2)v temp tabelo napolnit z podatki in sicer:
- Kurzor je potrebno napolnit z imenom zaposlenega, priimkom in seštevek posameznega zaposlenega (SUM(freight))
- potrebno it čez tabelo in naredit obdelavo -> vpisat v temp tabelo znesek, ter ostale podatke(ime, priimek,vrednostCelotneNjegoveProdaje, pribitek) po naslednjem pravilu:
IF(@vrednostProdaje > 10000) , seštej ta znesek ki si ga dobil od posameznega zaposlenga * 10%
in vpiši to vrednost in pa pribitek v temp tabelo.
(@vrednostCelotneNjegoveProdaje = @vrednostProdaje * 10% + @vrednostProdaje
@pribitek = 10)
v nasprotnem primeru pa namesto *10%, daj * 2%, se pravi:
(@vrednostCelotneNjegoveProdaje = @vrednostProdaje * 2% + @vrednostProdaje
@pribitek = 2)
(poglej stavek INSERT INTO)
//Primer Kurzorja:
declare Kurzor cursor
for
select polje1, polje2 from tabela
open Kurzor
fetch next from Kurzor into
@polje1,@polje2
while @@fetch_status = 0
begin
-- tu delaš kar pač imaš za narediti s podatki
fetch next from Kurzor into
@polje1,@polje2
end
close Kurzor
deallocate Kurzor
2.)Sestavi stored proceduro, ki prejme kot parameter employeeID int in vrne seštevek naročil za eno osebo. Tabela je orders, polje za seštevek pa freight...(SUM(freight))
detroit ::
ne štekam kaj misliš kurzor napolnit, ker kurzor se "polni" samo iz polne tabele ne pa prazne..oz niti ne vem kaj želiš narest s kurzorjem se sprehodit čez prazno tabelo in jo polnit?
Skero
detroit ::
create procedure blabla
(
@employeeID int
@sumsum float out
)
select @sumsum=SUM(freight) from Orders where employeeID = @employeeID
za drugo nalogo seveda če sploh je bilo spet mišljeno tko ker je precej nerazumljivo:o
(
@employeeID int
@sumsum float out
)
select @sumsum=SUM(freight) from Orders where employeeID = @employeeID
za drugo nalogo seveda če sploh je bilo spet mišljeno tko ker je precej nerazumljivo:o
Skero
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [SQL] Pohitritev izpisaOddelek: Programiranje | 2967 (1866) | kuall |
» | križci krožci c # (strani: 1 2 )Oddelek: Programiranje | 11985 (10644) | Yacked2 |
» | SQL programiranjeOddelek: Programiranje | 1195 (885) | slitkx |
» | sql-t stored procedureOddelek: Programiranje | 1066 (933) | detroit |
» | [sql]-stevilka vrsticOddelek: Programiranje | 1143 (1006) | bmandl |