Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak Zbudować Taką Kwerendę?, sprawdzi w tabeli1, usunie z tabeli2
fiszol
post 5.09.2004, 19:11:34
Post #1





Grupa: Zarejestrowani
Postów: 449
Pomógł: 16
Dołączył: 25.05.2004
Skąd: Gorzów Wlkp.

Ostrzeżenie: (0%)
-----


Witam

Chodzi mi o kwerendę która będzie działać w następujący sposób

sprawdzi w tabeli1 wartość pola X, gdy wartość ta okaże się mniejsza od 1, usunie wszystkie wpisy z polem Y z tabeli2 i tabeli1 ?

dla przykladu tabela1 wygląda tak
Kod
|id      |y         |x    |
|1       | jacek  | 1   |
|2       | placek | 4   |


a tabela2 tak:
Kod
|id     |y       |z    |    
|1      |jacek |bla |
|2      |placek|bla |


chodzi mi o to aby kwerenda ta sprawdziła wartość w tabeli1 pola X, jeśli koaże się ona mniejsza niż jeden usunęła wsyzstkie wpisy w tabelach 1&2 gdzie y=jacek, a żeby pola z wpisami placek zostały nie ruszne

kurcze, strasznie to zagmatwałem, przed chwilą miałem w głowie dokładnie jak to ma działać jednak gdzieś mi to uciekło, a im więcej się nad tym zastanawiam, tym więcej mi ucieka.... sadsmiley02.gif

pozdrawiam,
fiszol


--------------------
\o/
Go to the top of the page
+Quote Post
peyn
post 21.09.2004, 10:30:11
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 20.09.2004
Skąd: Konin

Ostrzeżenie: (0%)
-----


  1. --zmienne do przechowywania info z zapytania
  2. DECLARE @ile AS integer;
  3. DECLARE @y AS varchar(25);
  4.  
  5. --tworzymy kursor ktory bedzie nam pobieral dane z naszego zapytania
  6. DECLARE c_test CURSOR FOR SELECT x, y FROM tabela1; --otwieramy kursor
  7. OPEN c_test;
  8.  
  9. --sciagamy pierwsze dane z kursora
  10. FETCH NEXT FROM c_test INTO @ile, @y;
  11.  
  12. --dopoki w kursorze sa jakies dane bedziemy sprawdzali czy warunek jest spelniony
  13. WHILE @@FETCH_STATUS=0
  14. BEGIN --jesli x < 1 usuwamy dane z tabel
  15. IF @ile < 1
  16. BEGIN DELETE FROM tabela1 WHERE y = @y;
  17. DELETE FROM tabela2 WHERE y = @y;
  18. END;
  19.  
  20. --sciagamy kolejne dane z kursora
  21. FETCH NEXT FROM c_test INTO @ile, @y;
  22. END


To chyba powinno byc to o co Ci chodzi
Go to the top of the page
+Quote Post
fiszol
post 21.09.2004, 18:44:53
Post #3





Grupa: Zarejestrowani
Postów: 449
Pomógł: 16
Dołączył: 25.05.2004
Skąd: Gorzów Wlkp.

Ostrzeżenie: (0%)
-----


Dzięki, jednak poradziłem już sobie z tym za pomocą php ;]

pozdrawiam,
fiszol


--------------------
\o/
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 12:27