Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Вниз

Help me please   Найти похожие ветки 

 
Alexsyy   (2001-12-04 08:52) [0]

Привет всем!
Подскажите сделать так чтобы первичные ключи после удаления например всех записей в таблице при последующем добавлении начинались с 1? Например: есть таблица содержит 4 строки первичные индекесы соответственно 1..4, удалили все, добавили 1 строку у нее первичный индекс 5 (вместо желаемого 1)
С уважением Alexsyy


 
Владислав   (2001-12-04 09:32) [1]

Ну создавай первичный индекс (ключ называется) с единицы. В чем проблемы?


 
Maxus   (2001-12-04 09:40) [2]

Здравствуйте!
Если для MS SQL Server, то попробуйте так:
1. ключевой атрибут сделайте IDENTITY
2. в триггере удаления выполняйте TRUNCATE TABLE. Это команда сбрасывает IDENTITY столбцы в 0.
Посмотрите справку по IDENTITY (CREATE TABLE) и TRUNCATE TABLE.

P.S.
Ключи и индексы - разные вещи, мне кажется :)



 
Владислав   (2001-12-04 09:44) [3]

> Maxus (04.12.01 09:40)

Вообще-то, он написал для FoxPro и dBase


 
ValeraVV   (2001-12-04 12:34) [4]

Если нужен порядковый номер записи, то его можно и так получить (для FoxPro DBase), но вновь добавленные записи должны иметь ключ, отличный от других записей (в том числе и удаленных); Все это IMHO, а по вопросу: парадоксовской таблице (в определенном месте заголовка есть текущее значение автоинкрементного поля), его можно изменить, но открыв таблицу как обычный файл (думаю, то же справедливо и для DBase). Описание Header"а DBF есть у кого угодно. Если работать через БДЕ - легче пересоздать таблицу(или поле через запрос alter table)


 
Nest   (2001-12-04 14:06) [5]

А что, в DBASE есть автоинкрементные поля?

2Alexsyy
А где ты вообще берёшь значение ID ?
Ну например когда пустую таблицу попорядку начинаешь заполнять, то откуда значение берётся?
Есть идейки, но в холостую писать не хочется..


 
Mick   (2001-12-04 14:16) [6]

В DBASE есть автоинкрементные поля.


 
Niklen   (2001-12-04 14:36) [7]

Возможно, необходимо упаковать таблицу, чтобы не было уничтоженных записей
Table1.Exclusive := TRUE ;
Table1.Open ;
DbiPackTable( Table1.DBHandle, Table1.Handle, nil, nil, TRUE ) ;


 
Nest   (2001-12-04 14:40) [8]

2Mick
Начиная с какой версии?


 
Anatoly Podgoretsky   (2001-12-05 01:06) [9]

7



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Наверх









Память: 0.83 MB
Время: 0.033 c
3-21927
Aleks_Vl
2001-12-04 09:47
2002.01.08
DTS + Delphi


3-21917
Termik
2001-12-04 11:43
2002.01.08
Обращение к таблице по имени, записнному в переменной


14-22407
KL
2001-11-03 00:47
2002.01.08
Бета тестинг!!!


7-22425
Andrey
2001-06-19 15:45
2002.01.08
Функция для сканера


7-22453
Juri
2001-09-21 18:26
2002.01.08
RS485





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский