Advertisement
Guest User

Untitled

a guest
Dec 9th, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 1.07 KB | None | 0 0
  1. CREATE PROCEDURE rezerwacja
  2. @nazwa_kat VARCHAR(20),
  3. @imie VARCHAR(20),
  4. @nazwisko VARCHAR(20),
  5. @data_od Date,
  6. @data_do Date
  7. AS BEGIN
  8.     IF EXISTS (SELECT NAZWA FROM Kategoria WHERE NAZWA=@nazwa_kat)
  9.         BEGIN
  10.         DECLARE @nr_pok INT;
  11.         SELECT @nr_pok=NrPokoju FROM Pokoj p
  12.         JOIN Kategoria k ON p.IdKategoria=k.IdKategoria
  13.         WHERE k.Nazwa=@nazwa_kat;
  14.  
  15.         IF EXISTS (SELECT Idgosc FROM Gosc WHERE imie=@imie AND nazwisko=@nazwisko)
  16.             BEGIN
  17.  
  18.             DECLARE @idgoscia INT;
  19.             SELECT @idgoscia=IdGosc FROM Gosc WHERE imie=@imie AND nazwisko=@nazwisko
  20.  
  21.             INSERT INTO Rezerwacja (DataOd,DataDo,IdGosc,NrPokoju)
  22.             VALUES(@data_od,@data_do,@idgoscia,@nr_pok);
  23.  
  24.             END;
  25.         ELSE
  26.             BEGIN
  27.             DECLARE @idgoscia INT;
  28.             SELECT @idgoscia=ISNULL(Max(IdGosc),0)+1 FROM Gosc;
  29.  
  30.             INSERT INTO Gosc (imie,nazwisko)
  31.             SELECT @idgoscia,@imie,@nazwisko
  32.             FROM Gosc;
  33.  
  34.             INSERT INTO Rezerwacja (DataOd,DataDo,IdGosc,NrPokoju)
  35.             VALUES(@data_od,@data_do,@idgoscia,@nr_pok);
  36.  
  37.             END;
  38.  
  39.  
  40.         END;
  41.     ELSE
  42.         BEGIN
  43.         Raiseerror( 'Nie ma pokoju o podanej kategorii' , 1 , 2 );
  44.         END;
  45. END;
  46. GO
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement