|
|
|
|
|
для: Unkind™
(28.06.2006 в 19:55)
| | Нашел...В одном из подключаемых файлов...Что-то не разберу...
<?
//вырезано
$auto_increment = '';
$result = PMA_DBI_query('SHOW TABLE STATUS FROM ' . PMA_backquote($db) . ' LIKE \'' . PMA_sqlAddslashes($table) . '\'');
if ($result != FALSE) {
if (PMA_DBI_num_rows($result) > 0) {
$tmpres = PMA_DBI_fetch_assoc($result);
if (isset($GLOBALS['auto_increment']) && !empty($tmpres['Auto_increment'])) {
$auto_increment .= ' AUTO_INCREMENT=' . $tmpres['Auto_increment'] . ' ';
}
//Куча всего
?>
|
| |
|
|
|
|
|
|
|
для: Unkind™
(26.06.2006 в 19:50)
| | Блин, че правда никто не знает? А то опять проблема...Когда последний ID был удален, то auto_increment не сбросилось, а узнать надо...Пойду пока в исходниках phpMyAdmin покапаюсь...Это уже последнее дело...Там пока найдешь нужный файл...=))
P.S. Ну вот...Непонятно чо-то...В форме есть checkbox с именем "auto_increment", в обработчике его нет...Странно... | |
|
|
|
|
|
|
|
для: Loki
(26.06.2006 в 19:21)
| | Вот как раз дело в том, что этот auto_increment остается...Просто я пишу скрипт баннерной сети и есть проблема...
Новый баннер сохраняется в папке с именем bid_id.php, где bid - ид баннера, у которого и стоит auto_increment. А если удалить баннер (допустим он был один всего), то получается, что в таблице
auto_increment начинается не с нуля, а чтобы сохранить новый баннер нужно достать bid из таблицы, а его там нет...Ведь в phpMyAdmin есть такое...=) | |
|
|
|
|
|
|
|
для: Unkind™
(26.06.2006 в 15:44)
| | Тут есть пара тонкостей:
если таблица очищена при помощи
или
то автоинкремент сбратывается
Если же использовать
DELETE FROM table WHERE 1
|
то автоинкремент сохраняется.
Подозреваю что фича эта недокументированная, так что пользоваться ей на свой страх и риск.
А для чего нужно значение автоинкремента пустой таблицы? | |
|
|
|
|
|
|
|
для: valenok
(26.06.2006 в 16:41)
| | Таблица пустая...Какой еще последний... | |
|
|
|
|
|
|
|
для: Unkind™
(26.06.2006 в 15:44)
| | Последний id MySQL функцией MAX() . | |
|
|
|
|
|
|
| А как узнать последний ID в таблице? А то если таблица очищена, то выбор последнего ID в таблице приводит к ошибке, а если просто будет удалены ряды, то получается, что auto_increment будет, например 100, а в таблице нет ни одного ID'а.
Даже не ID последний, а именно auto_increment как это появляется обычно после экспорта таблицы в phpMyAdmin с включенным флагом "auto_increment "... | |
|
|
|
|