powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Изменение значения AUTO_INCREMENT
6 сообщений из 6, страница 1 из 1
Изменение значения AUTO_INCREMENT
    #40128816
patrick1968
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.

В MySQL я новичок, поэтому сорри за банальщину
мне надо запустить auto_increment таблицы исходя из ID другой, поэтому делаю так

SELECT @IDENT := MAX(id) FROM `Mapping`.table1 t;

DROP TABLE IF EXISTS `Mapping`.`mytable`;
CREATE TABLE `Mapping`.`mytable` (
`newid` int(11) NOT NULL AUTO_INCREMENT,
`oldid` int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (`newid`) USING BTREE,
INDEX `index_old_id`(`oldid`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 0 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

ALTER TABLE `Mapping`.`mytable` AUTO_INCREMENT = @IDENT;

и в строке ALTER TABLE ошибка - ну типа неверный синтаксис рядом с @IDENT - меняю на число - всё норм, а как же туда переменную вставить. Заранее благодарен.
...
Рейтинг: 0 / 0
Изменение значения AUTO_INCREMENT
    #40128820
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CONCAT-PREPARE-EXECUTE

Код: sql
1.
2.
3.
4.
5.
mysql> SET @inc = 5;
mysql> SET @s = CONCAT('ALTER TABLE `Mapping`.`mytable` AUTO_INCREMENT = ', @inc); /* собираем строку*/

mysql> PREPARE stmt10 FROM @s;
mysql> EXECUTE stmt10;

если набрать здесь на форуме в поиске "дырки" и почитать топики, то смысл будет в том что поле AUTO_INCREMENT используется НЕ для "порядкого номера", а для "целостности" данных
...
Рейтинг: 0 / 0
Изменение значения AUTO_INCREMENT
    #40128828
patrick1968
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я себе тоже это представлял. Спасибо
...
Рейтинг: 0 / 0
Изменение значения AUTO_INCREMENT
    #40129615
patrick1968
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Еще вопрос попутно про транзакции
выполняю скрипт простой

SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
START TRANSACTION;

DROP DATABASE IF EXISTS `Mapping`;
CREATE DATABASE `Mapping`;

ROLLBACK;

И тем не менее базу удаляется и создается заново хотя Rollback или подобные операции не откатываются
...
Рейтинг: 0 / 0
Изменение значения AUTO_INCREMENT
    #40129618
patrick1968
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще можно ли получить количество записей, которое было добавлено (изменено, удалено) при последнем запросе
...
Рейтинг: 0 / 0
Изменение значения AUTO_INCREMENT
    #40129620
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Изменение значения AUTO_INCREMENT
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]