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

Вниз

Вторичные индексы.   Найти похожие ветки 

 
Sergey-ZZZ   (2002-04-15 11:08) [0]

Создаю таблицу программно не из Datebase Desktop. Не могу добавить вторичный индекс. Через Desktop все понятно, а здесь выдает не то что хочу. Вот мой кусок кода
{Создание базы по товарам}
if TableForCrate=nil then
TableForCrate := TTable.Create(nil);
with TableForCrate do
begin
DatabaseName:="Sklad";
TableName:= Form1.SaveDialog1.FileName + "Tov";
TableType:=ttParadox;
with FieldDefs do {Создать поля в базе }
begin
Add("CodTov", ftAutoInc, 0, false); {Код товара}
Add("Name", ftString, 25, false); {Наименование товара}
Add("GrupID", ftInteger, 0, false); {Категория товара}
Add("EdIzm", ftString, 15, false); {Еденица измерения}
Add("Upak", ftString, 25, false); {Упаковка}
Add("Netto", ftFloat, 0, false); {Нетто}
Add("Brutto", ftFloat, 0, false); {Брутто}
// Add("Gabar", ftString, 25, false); {Габариты}
Add("Proizv", ftString, 25, false); {Производитель}
Add("DateIzg", ftDate, 0, false); {Дата изготовления}
Add("DateReal", ftDate, 0, false); {Дата реализации}
Add("Cena", ftCurrency, 0, false); {Цена}
Add("Prim", ftString, 40, false); {Примечания}
end;
with IndexDefs do
begin
Add("","CodTov",[ixPrimary]);
end;
CreateTable;
{Добавляем вторичный индекс}
{Здесь мне нужно Maintained, но не получается}
AddIndex("GrupID", "GrupID", [ixNonMaintained]);
Close;
end;
if TableForCrate<>nil then
TableForCrate.Free;
TableForCrate := nil;


 
VAleksey   (2002-04-15 11:13) [1]

1) А зачем тогда указываешь ixNonMaintained если тебе нужен Maintained ?
2) Имя поля = Имя индекса ? Может здесь заморочка ?
3) Попробуй воспользоваться конструкцией SQL - CREATE INDEX


 
Anatoly Podgoretsky   (2002-04-15 11:20) [2]

Sergey-ZZZ © (15.04.02 11:08)
Не ясно что хочешь и что не работает?
AddIndex("GrupID", "GrupID", []);


 
Sergey-ZZZ   (2002-04-15 11:27) [3]

Это единственное которое не ругнулось, в остальных случаях индекс не создается. В дальнейшем для связывания полей двух таблиц Master-Deteil нужен вторичный индекс не NonMaintained.
Мне нужно не через SQL.



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

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

Наверх




Память: 0.45 MB
Время: 0.005 c
4-26291
Shiza
2002-02-28 18:52
2002.05.09
Функция LockFile


1-26061
Виталик
2002-04-25 17:52
2002.05.09
TMaskEdit


14-26256
111
2002-03-31 22:45
2002.05.09
Win3.11 ;)


3-26003
Jakov
2002-04-05 13:59
2002.05.09
.dbx - ?


14-26247
Baz
2002-04-02 06:39
2002.05.09
У меня со зрением что-то?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский