|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
12.08.2011, 09:31 | #1 |
Регистрация: 03.09.2010
Сообщений: 8
|
Возврат первичного ключа
после очистки таблицы первичный ключ исчесляется с прежнего места, как вернуть его на 1?
|
12.08.2011, 10:07 | #2 |
Форумчанин
Регистрация: 20.02.2010
Сообщений: 229
|
если есть phpMyadmin, то заходишь в таблицу-> операции-> там есть поле AUTO_INCREMENT в котором лежит последний записаный id, как осуществить это с помощью sql запроса думаю гугл ответит
думай как баг, действуй как баг, и ты найдешь баг )
|
12.08.2011, 11:00 | #3 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Единственное требование к первичному ключу - это его УНИКАЛЬНОСТЬ! Всё! Нельзя к нему привязывать какие-то свои аттрибуты!! (ну, например, номер документа и т.п.) НЕЛЬЗЯ! Заводите отдельное поле и делайте с ним что хотите. Хоть обнуляйте, хоть наращивайте, хоть что.. И оставьте в покое первичный ключ. сорри, если был излишне эмоционален... |
|
12.08.2011, 11:27 | #4 |
Регистрация: 03.09.2010
Сообщений: 8
|
спс, а то я не знал про переменую эту, сейчас уже нашел как ее изменять
Serge_Bliznykov, ты меня не так понял, я удалил несколько строк в конце таблицы, во и хочу изменить AUTO_INCREMENT, чтобы он мне следующие записи не 40 какие-нибуть ставил, а следующим номером по порядку от наибольшего в таблице сейчас попробую проверку в скрипт записи в БД добавить и при надобности пусть правит AUTO_INCREMENT |
12.08.2011, 11:39 | #5 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
А вот Вы меня - нет! моя основная мысль - это то, что каждая запись в таблице должна иметь свой уникальный (первичный) ключ. Пусть это будут такие, например, ключи: 1, 2, 54, 87, 34, 32, 2000, 7, 55, 56.... И всё нормально. Ещё раз. Они должны быть уникальны. Точка. Поймите, что большего от ключа ничего и не требуется. |
|
12.08.2011, 14:44 | #7 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
не надо смешивать мух и котлеты! поясню немножко.. Первичный ключ должен быть. Тут, надеюсь, вопросов/противоречий не возникает?.. Нужны Вам ещё какие-то естественные ключи - номер документа, инн организации, порядковый номер заявки - да что угодно - создавайте нужные поля и пользуйтесь ими как хотите. Первичный ключ - не трогайте! И избежите кучи ненужных проблем, косяков, глюков, переделок структуры БД, криков, как это, два одинаковых номера договора НЕ МОЖЕТ БЫТЬ, что же Вы сразу не сказали и т.д. и т.п... Уж поверьте моему (и не только моему) опыту... В качестве дополнительной информации могу порекомендовать статью Анатолия Тенцера "Естественные ключи против искуственных ключей" |
|
12.08.2011, 15:15 | #8 | |
Смайлик :)
Форумчанин
Регистрация: 12.12.2010
Сообщений: 445
|
Цитата:
Самый перспективный framework Yii (c)
|
|
12.08.2011, 16:06 | #9 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
ID в таблице как Вы думаете, откуда возник такой вопрос у автора темы? из собственной реальной практики - сейчас вряд ли вспомню ВСЕ замеченные косяки/проблемы... ну, так, навскидку. Есть регистрация и выдача неких технических условий. В номере техусловия присуствует порядковый номер (там сложный длинный код, в котором закодировно предприятие, подразделение и порядковый номер... Этот порядковый номер был единый в рамках предприятия (логично же, да - брался по auto_increment (в Oracle использовался sequence)) и всё было хорошо. пока в один прекрасный момент не было объявлено, что по каждому подразделению нумерация должна вестись ОТДЕЛЬНО. В результате изменение структур БД (отдельная таблица, где по каждому подразделению ведётся своя нумерация), изменение ряда процедур и функций и т.д. поверьте мне, не всегда экономия пары-тройки байт стоит кучи времени и сил... впрочем, учитывать это или не учитывать это в своей работе - дело ваше. Как говаривала одна знакомая: "Пока не попаду под трамвай - не поверю, что это больно"... |
|
12.08.2011, 20:27 | #10 | ||
Регистрация: 03.09.2010
Сообщений: 8
|
Цитата:
Цитата:
|
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подбор ключа | Shurik(c) | Помощь студентам | 3 | 05.06.2011 15:50 |
Создание ключа | Молоток | Общие вопросы Delphi | 10 | 14.04.2011 08:19 |
Delphi считывание значения первичного ключа | world12_tk | Помощь студентам | 10 | 22.03.2011 09:23 |
вывод первичного ключа | ZBoris | SQL, базы данных | 3 | 09.02.2009 17:38 |
Ввод ключа! | }{oт@бь)ч | Общие вопросы Delphi | 9 | 08.02.2009 12:11 |