![]() |
Дать полю AUTO_INCREMENT и PRIMARY KEY и заполнить данными без PHP?
Всем привет!
Такая задача. Есть таблица в БД. У нее n полей и m строк. Поле id пустое, точнее пустые его ячейки во всех стрках. Ну, так вышло. :) Можно ли сделать его AUTO_INCREMENT и PRIMARY KEY и заполнить данными, числами от нуля до m-1, не прибегая к помощи серверного скриптового языка? Иными словами -- есть ли для этой задачи решение для ленивых -- через phpMyAdmin? Спасибо. |
Сделайет экспорт в sql (структура+данные), добавьте в create table AUTO_INCREMENT и PRIMARY KEY и перезалейте данные.
непосредственно по таблице без извращений не получится. |
Кроме id поля есть ? Можно, к примеру, сначала сделать UPDATE table SET id=some_hash(field1, field2, ... , fieldN);
Потом сделать id ключом, потом добавить к нему автоинкремент. От нуля до m-1 не получится, но ключ будет. |
Спасибо за подсказку. Только я не понял конструкцию some_hash(field1, field2, ... , fieldN). И функцию some_hash тоже нигде не нашел...
|
Гхм... some_hash - это функция, которую тебе надо придумать, чтобы она а) возвращала числовое значение и б) это самое значение было уникальным для каждой из записей. Что бы в процессе UPDATE не вылезла ошибка "duplicate key found".
|
| Часовой пояс GMT +4, время: 02:15. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.