|
|
|
| Подскажите как сделать чтобы в таблице было 2 увеличивающихся поля, числа в них разные, не зависят друг от друга к примеру таблица
forum_id INTEGER PRIMARY KEY NOT NULL,
forum_order INTEGER UNSIGNED NOT NULL,
forum_title varchar(100) NOT NULL
пытаюсь увеличить так
INSERT INTO forum (forum_order, forum_title) VALUES ((SELECT MAX(forum_order)+1 FROM forum), 'Первая тема');
если до этого таблица пустая выдает ошибку, а если есть записи то в forum_order записи увеличиваются все нормально
как можно по-другому, нормально это сделать, заранее спасибо | |
|
|
|
|
|
|
|
для: ivanov_max
(04.09.2009 в 02:14)
| | Использовать поле forum_order - как поле с auto_inctrement -ом, тогда запрос на добавление будет выглядеть:
INSERT INTO forum (forum_order, forum_title) VALUES (NULL, 'Первая тема');
|
| |
|
|
|
|
|
|
|
для: retsoul
(04.09.2009 в 02:36)
| | там forum_id автоинкрементное, насколько я знаю 2 поля нельзя | |
|
|
|
|
|
|
|
для: ivanov_max
(04.09.2009 в 02:14)
| | а если есть записи то в forum_order записи увеличиваются все нормально
вот тут вы здорово не угадали... это нормально до тех пор пока вы один работаете с таблицей... Шанс на ошибку прямопропорционально равен количеству онлайн пользователей форума.
forum_order - это у вас что?
обычно делают свою таблицу для этой сущности (и естественно с автоинкрементом), а уж потом вставляют в первоначальную таблицу - это и называют связью таблиц. | |
|
|
|