Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: настройка mysql
Форумы портала PHP.SU » » Вопросы новичков » настройка mysql

Страниц (1): [1]
 

1. cooperok - 07 Января, 2012 - 23:42:07 - перейти к сообщению
Не подскажите можно ли как то сделать, что бы когда в базу заносилось ID оно автоматически через AUTO_INCREMENT
допустим добавилось 50 строк
потом я удаляю первые 10 с 1 по 10 ID
а потом снова когда добавляется информация то ID снова идет с 1 по 10 ну а потом с 51


вот интерисует можно ли сделать та что бы если я удалял строки с 1 по 10 то ID c таким ID Больше не создавались а сразу шли с 51
2. PATCH - 07 Января, 2012 - 23:47:10 - перейти к сообщению
помойму auto_increment работает так
забираем самое большое число в столбце с auto_increment в таблице и плюсуем АДЫН . или самое последнее число (что тоже будет самое большое)
3. Panoptik - 07 Января, 2012 - 23:48:41 - перейти к сообщению
если вы удалите строки с таблицы, то по автоинкременту новые будут всегда следующими номерами. то есть в вашем примере новая запись будет 51 и т.д. а те первых строк вы сможете добавить через явное добавление с указанием id. и почему то мне кажется что если вам так уж нужно удалить записи, а потом снова добавить их с такими же id, то можно сделать update...
4. Мелкий - 07 Января, 2012 - 23:49:05 - перейти к сообщению
cooperok, для чего вам это?

Впрочем, кажется я запутался, что вы хотите и чем это отличается от поведения автоинкремента.
5. cooperok - 07 Января, 2012 - 23:49:56 - перейти к сообщению
PATCHнезнаю что то не так работает(
во удалил вручную 10 строк из базы и когда инфа заполняется то в auto_increment снова заполняет те ID которые удалил

Просто запись идет показов и потом подсчет за сутки сколько раз показался баннер,
и хочу удалять те записи которые устарели,
но хочется что бы был подсчет сколько всего было показов за все время тоест хотел просто вывести последний ID
но вот неполучается записывать сначала
(Добавление)
Panoptik
вот вот мне как раз не надо что бы он перезаписывал,

удаляю для того что бы в базе поиск был быстрее
а потом счетчик снова в auto_increment начинает сначала записывать но надо что бы продолжал записывать с большого числа
6. Panoptik - 07 Января, 2012 - 23:51:53 - перейти к сообщению
PATCH пишет:
помойму auto_increment работает так
забираем самое большое число в столбце с auto_increment в таблице и плюсуем АДЫН .
у каждой таблицы есть текущее значение автоинкремента и новая запись создается согласно с ней, если в таблице не существует конфликтов, это например может случиться когда автоинкремент был вручную изменен и у нас допустим есть 20 записей с 1 по 20, а значение автоинкремента стоит 10, то тогда СУБД увидит что 10 значение уже есть и будет искать близжайшее свободное, то есть 21, а вот если поставить автоинкремент 500, то новая запись будет иметь уже значение 500
7. cooperok - 07 Января, 2012 - 23:55:48 - перейти к сообщению
Panoptik
ну у меня когда запись в базу идет то в поле ID ничего не записываю
просто дело в том что при удалении он почему то начинат запись делать не с большего а сначало заполнить те ID которые удалил
(Добавление)
странно вобщем
в базе несколько таблиц
в других вроде все нормально заполняет продолжает,
а вот в этой почему то начинает с начала записывать(
8. PATCH - 07 Января, 2012 - 23:57:31 - перейти к сообщению
запрос на удаление давай сюда)) я чувствую ты 1 махом очищаеш таблицу тем самым сбивая автоинкремент в 0 ))
9. cooperok - 07 Января, 2012 - 23:58:48 - перейти к сообщению
$resultat = mysql_query("SELECT * FROM unik WHERE (data<'$wasdas')");
$array = mysql_fetch_array($resultat);
do
{
$id=$array['id'];
$resultatss = mysql_query("delete from unik where id=$id");

echo $id." удален<br>";
}
while($array = mysql_fetch_array($resultat));
10. PATCH - 08 Января, 2012 - 00:01:23 - перейти к сообщению
хм я в ступоре) я думал запрос типо
11. cooperok - 08 Января, 2012 - 00:04:00 - перейти к сообщению
Удалил поле ID c автоинкремент
и снова создал его
таблицу полностью почистил
и вроде сейчас при удаление первых 10 строк то после уже ИД с 1-10 не заполняет,
незнаю в чем было дело
вроде все точно так же было как и новый тип все так же
12. PATCH - 08 Января, 2012 - 00:11:12 - перейти к сообщению
если вспомниш из за чего ет было отпиши DD очень полезно помойму будет Блогерам)

 

Powered by ExBB FM 1.0 RC1