Pomoc sa SQLom

poruka: 1
|
čitano: 1.075
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
13 godina
neaktivan
offline
Pomoc sa SQLom

Nema veze skužio sam može delete

 

Trebam iz XML-a dodati Državu i Gradove ali samo ako već ne postoje u bazi.

Uspio sam za državu ali ne znam kako sad to isto napraviti i za gradove. Ne funkcioniram baš dobro ovako kasno...

Ovo imam za sad, molim pomagajte:

 

CREATE PROC UmetniDrzavu

 

@Drzava xml

AS

DECLARE @IDDrzava int

DECLARE @Naziv nvarchar(50)

SET @Naziv = (SELECT Tablica.Stupac.value('@Naziv','nvarchar(50)')

FROM @Drzava.nodes('/Drzava') AS Tablica(Stupac))

 

IF EXISTS(SELECT IDDrzava FROM Drzava WHERE Naziv = @Naziv)

BEGIN

SET @IDDrzava =(SELECT IDDrzava FROM Drzava WHERE Naziv = @Naziv)

END

ELSE

BEGIN

INSERT INTO Drzava(Naziv)

SELECT Tablica.Stupac.value('@Naziv','nvarchar(50)')

FROM @Drzava.nodes('/Drzava') AS Tablica(Stupac)

SET @IDDrzava = SCOPE_IDENTITY()

END

 

INSERT INTO Grad(Naziv,DrzavaID)

SELECT Tablica.Stupac.value('@Naziv','nvarchar(50)'),

@IDDrzava

FROM @Drzava.nodes('/Drzava/Gradovi/Grad') AS Tablica(Stupac)

WHERE NOT EXISTS(SELECT * FROM Grad WHERE Naziv = Tablica.Stupac.value('@Naziv','nvarchar(50)'))

GO

 

DECLARE @Drzava xml

SET @Drzava = N'

   <Drzava Naziv="Brazil">

<Gradovi>

<Grad Naziv="Rio de Janeiro" />

<Grad Naziv="Salvador" />

<Grad Naziv="Fortaleza" />

</Gradovi>

   </Drzava>'

 

EXEC UmetniDrzavu @Drzava

GO

 

 

Poruka je uređivana zadnji put pon 13.2.2012 0:54 (gramzoncro).
Moj PC  
0 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice