Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Firebird] Insert or update, Modyfikacja parametru
icemanwlkp
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 1
Dołączył: 29.09.2010

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


Witam , mam pytanie czy podczas operacji insert or update mogę wykorzystywać już istniejące zapisy ? Jak w samym update set np update tabele set a+a+1;

takie zapytanie wywala mi błąd , może je źle napisałem chce by kolumna ilość była modyfikowana przez parametr :i

  1. UPDATE OR INSERT INTO sklepy_stan_m (TOWAR, ID_PRODUKTU, METKA, ILOSC, CENA, ID_SKLEPU, MIESIAC, ROK)
  2. VALUES (:t, :p, :m, (ilosc)+:i, :c, :id_sklepu, :miesiac, :rok)
  3. matching(ID_PRODUKTU, METKA, CENA, ID_SKLEPU, MIESIAC, ROK);
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Nie uzywam FireBird ale z tego co wyczytalem w necie w minute ( (IMG:style_emoticons/default/wink.gif) ) musisz uzyc MERGE

http://forums.devshed.com/firebird-sql-dev...ues-610066.html
http://stackoverflow.com/questions/1461435...rence-in-values

google Twoim przyjacielem (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
icemanwlkp
post
Post #3





Grupa: Zarejestrowani
Postów: 50
Pomógł: 1
Dołączył: 29.09.2010

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


No tak ,ale to merge cosik zawodzi , jeżeli using (tu zapytanie ) jest puste czyli null wyników.

  1. merge INTO sklepy_stan_m m USING (SELECT * FROM sklepy_stan_m s WHERE s.id_sklepu=33 AND s.miesiac=13 AND s.rok=2016 ) cd
  2. ON (m.id_produktu = cd.id_produktu AND m.metka=cd.metka AND m.cena=cd.cena)
  3. when matched then
  4. UPDATE SET m.ilosc = m.ilosc+1
  5. when NOT matched then
  6. INSERT (TOWAR, ID_PRODUKTU, METKA, ILOSC, CENA, ID_SKLEPU, MIESIAC, ROK)
  7. VALUES ('usun', 12, 1234567890123456, 1, '2.00', 33, 13, 2016)


Ten post edytował icemanwlkp 18.05.2016, 11:37:24
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 14.10.2025 - 20:59