umatik
6.03.2013, 19:45:26
chodzi mi o taką rzecz:
INSERT INTO `tabela` (`id`,`nr`) VALUES (NULL, 'XXX/'+DODAWNE_ID )
To DODAWNE_ID ma być takie same jak pole AUTO_INCREMENT id, jak uzyskać info o aktualnie dodawanym numerze id ?
umatik
7.03.2013, 12:00:35
last-insert, jak sama nazwa wskazuje odnosi się do ostatnio dodawnego... a mnie chodzi o aktualnie dodawne.
Damonsson
7.03.2013, 12:29:29
Skrypt nie wie jakie, dopóki go nie dodasz. Musisz albo najpierw pobrać ostatnie id w bazie i dodawać ręcznie +1. Albo najpierw insert, a później update z lastInsertId. Choć nie wiem, czy nie da się jakoś operując na zapytaniu tego wyciągnąć.
Crozin
7.03.2013, 12:39:18
1. W przypadku kolumny z AI wartość klucza głównego będzie znana dopiero po dodaniu rekordu. Mógłbyś tutaj skorzystać z TRIGGERa wyzwalanego po dodaniu (AFTER INSERT) nowego rekordu.
2. Kolumnę NR możesz generować dynamicznie, np. poprzez: CONCAT('XXX/', id)