Отслеживание primary key в базе mysql

(Ответов: 8, Просмотров: 762)
  1. Гуру Аватар для kvins
    • Регистрация: 24.08.2011
    • Сообщений: 1,110
    • Репутация: 160
    На сайте в база данных каталога товаров , есть поле id как всегда с primary key(первиным ключем)
    и по первичному ключу создаются картинки.

    если удалить последний товар , то как тогда сделать выборку из базы чтобы показался последний (id) не тот который существует в базе , а тот который будет следующий или последний удаленный
    • 0
  2. Дипломник Аватар для vlasoff
    • Регистрация: 10.08.2012
    • Сообщений: 211
    • Репутация: 42
    поле id с автоинкрементом?
    • 0
  3. {YaGoo} Аватар для sinneren
    • Регистрация: 10.11.2011
    • Сообщений: 285
    • Репутация: 63
    php.net/mysql_insert_id
    • 1

    Спасибо сказали:

    kvins(06.10.2012),
  4. Гуру Аватар для kvins
    • Регистрация: 24.08.2011
    • Сообщений: 1,110
    • Репутация: 160
    vlasoff, Да

    ---------- Сообщение добавлено 21:05 ---------- Предыдущее 20:41 ----------

    Цитата Сообщение от sinneren Посмотреть сообщение
    php.net/mysql_insert_id
    mysql_insert_id — Возвращает ID, сгенерированный при последнем INSERT-запросе.

    А как выбрать последний id с таблицы если не было еще запроса ??

    Или как эту функцию использовать ?

    Пробовал так , может выборку нужно делать ?
    $mysql_id = mysql_query("SELECT LAST_INSERT_ID()");

    echo $mysql_id[0];
    • 0
  5. {YaGoo} Аватар для sinneren
    • Регистрация: 10.11.2011
    • Сообщений: 285
    • Репутация: 63
    Может выборку, вот тут описаны особенности ее работы, пример применения,где присваивается переменной @id:=LAST_INSER_ID();
    может поможет.

    ---------- Сообщение добавлено 21:36 ---------- Предыдущее 21:29 ----------

    Как вариант "SELECT MAX(id) FROM {$table}"
    • 0
  6. Гуру Аватар для kvins
    • Регистрация: 24.08.2011
    • Сообщений: 1,110
    • Репутация: 160
    Цитата Сообщение от sinneren Посмотреть сообщение
    Как вариант "SELECT MAX(id) FROM {$table}"
    Это у меня щас стоит , оно помогает если удалять товары все кроме последней , а если последнюю удалить , то потеряется последняя айди , и выведется последняя из базы а не в логическом порядке
    • 0
  7. Дипломник Аватар для vlasoff
    • Регистрация: 10.08.2012
    • Сообщений: 211
    • Репутация: 42
    PHP код:
    <?php 

    function get_table_auto_increment_next_value($db$table

      
    $sql "SHOW TABLE STATUS FROM `$db` LIKE '$table'"

      
    $result mysql_query($sql); 
      
    $row    mysql_fetch_assoc($result); 
       
      return 
    $row['Auto_increment']; 


    ?>
    не тестил, взято отсюда

    от себя замечу, что делить шкуру не убитого медведя, т.е. оперировать идентификатором ещё не добавленной записи - дело весьма неблагодарное, вероятно имеются какие то серьёзные изъяны в архитектуре приложения.
    • 2

    Спасибо сказали:

    kvins(06.10.2012), sinneren(06.10.2012),
  8. {YaGoo} Аватар для sinneren
    • Регистрация: 10.11.2011
    • Сообщений: 285
    • Репутация: 63
    Да, как-то не подумал, напишите сработает ли вариант vlasoff, интересно всё таки же! :)
    • 0
  9. Гуру Аватар для kvins
    • Регистрация: 24.08.2011
    • Сообщений: 1,110
    • Репутация: 160
    Да работает , правда я сделал это еще вчера .


    $sort=mysql_fetch_array(mysql_query("show table status like 'products'"));
    echo $sort['Auto_increment'];
    • 1

    Спасибо сказали:

    sinneren(06.10.2012),

Похожие темы

Темы Раздел Ответов Последний пост
Ручной прогон по собственной базе сайтов. Тиц от 10 до 3300! В базе более 400 сайтов!
Регистрация, поднятие ТИЦ 29 01.06.2013 14:08
Скрипт комментариев CommentIt Ajax (Mysql + Без mysql)
Софт, скрипты, лицензии 0 01.07.2012 00:59
Выборка произвольных записей в базе данных Mysql. Проблемы и решения.
Web программирование 1 14.02.2012 17:02
Уделяем внимание базе данных MySQL
Дайджест блогосферы 4 27.01.2011 15:48
Отслеживание своих профилей
Дорвеи и black SEO 4 04.12.2009 08:57

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры