![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 386 Pomógł: 25 Dołączył: 28.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
witam mam problem mam tabele ForumDzialy i mam tam kolumny DzialId Nazwa Opis DataUtworzenia i Kolejnosc. Chce wstawic wiersz jakis i zeby on mial w kolumnie Kolejnosc najwieksza dotychczasowa wartosc z tej kolumny powiekszona o 1.
proboiwalem czagos takiego : Kod INSERT INTO `ForumDzialy` SET `DzialId`= null ,`Nazwa` = 'aaaaa', `Opis` = 'aaaaa',`DataUtworzenia` = '2006-03-21', `Kolejnosc`= (SELECT MAX(`Kolejnosc`) FROM `ForumDzialy`)+1 i wyskoczyl komunikat Kod ERROR 1093 (HY000): You can't specify target table 'ForumDzialy' for update in FROM clause nie wiem czy to wogole sie da zrobic w jednym zapytaniu. pomocy Ten post edytował piotrekkr 22.03.2006, 14:44:59 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 386 Pomógł: 25 Dołączył: 28.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
sori nie wiedzialem i przenioslem ide przeczytac regulamin
przeczytalem regulamin (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) troche zajmuje przy okazji okazalo sie ze to jednak prawda ze nie da rady jednym zapytaniem. W manualu napisali takie cos Cytat Error 1093 (ER_UPDATE_TABLE_USED) SQLSTATE = HY000 Message = "You can't specify target table 'x' for update in FROM clause" This error occurs in cases such as the following: UPDATE t1 SET column2 = (SELECT MAX(column1) FROM t1); You can use a subquery for assignment within an UPDATE statement because subqueries are legal in UPDATE and DELETE statements as well as in SELECT statements. However, you cannot use the same table (in this case, table t1) for both the subquery's FROM clause and the update target. trzeba bedzie recznie no nic trudno sie mowi. Ten post edytował piotrekkr 22.03.2006, 17:05:00 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 14:56 |