![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Неизвестный алиас [D6, dBase, FoxPro]
_BasiL_ © (2002-12-16 15:37:00)Имеется 18 БД (18 TDataSource и 18 TTable). БД создаются автоматически с помощью SQL (TQuery) и затем активируются, соответственно все БД изначально Active:=FALSE
Проблема в следующем, одна БД не хочет ставиться FALSE, если она активирована, то программа запускается и работает, а если поставить Active:=FALSE, то при запуске, программа ругается на неизвестный алиас, причем во всех БД.
Севостьянов Игорь (2002-12-23 10:43:00) [1]Ты еще заинтересован в ответе ?
_BasiL_ (2002-12-17 14:40:00) [2]Помогите же мне кто нибудь!
_BasiL_ (2002-12-17 13:08:00) [3]БД - база данных, по поводу таблицы опустим.
DataBaseName прписываю название алиаса
TableName прописываю название файла (dbf)
Код создания DBF
SQLStr:="CREATE TABLE "+fName+" "+SQLStr;
dmCreate.qCreate.SQL.Clear;
dmCreate.qCreate.SQL.Add(SQLStr);
dmCreate.qCreate.ExecSQL;
dmCreate.qCreate.Close;
думаю fName понятно имя файла
Например SqlStr
SQLStr:="("+
"CNAME CHARACTER(160), " +
"CADDR CHARACTER(60), " +
"CCITY CHARACTER(60), " +
"CCNT CHARACTER(25) )";
Вот текст создание алиаса в БДЕ
if not Session.IsAlias("BK") then
Session.AddStandardAlias("BK",DataDir,"DBASE");
Session.GetAliasParams("BK",aParams);
aParams.Values["PATH"]:=DataDir;
Session.ModifyAlias("BK",aParams);
Session.SaveConfigFile;
Вот текст настройки DBase
SList := TStringList.Create;
SList.Add ("LANGDRIVER=dBASE RUS cp866");
SList.Add ("DEFAULT DRIVER=DBASE");
SList.Add ("LEVEL=4");
SList.Add ("MDX BLOCK SIZE=512");
SList.Add ("MEMO FILE BLOCK SIZE=64");
Session.NetFileDir:=DataDir;
Session.PrivateDir:=DataDir;
Session.ConfigMode:=cmSession;
Session.ModifyDriver("DBASE",SList);
Session.SaveConfigFile;
SList.Free;
Только я непойму как на ошибку влияет все вышеизложенное?
Севостьянов Игорь (2002-12-17 12:49:00) [4]Кстати следуя из твоих неточных описаний в DataModule ты сделал 18 TTable объектов, будет интересно, что ты прописываешь в таком случае в свойствах DataBaseName и TableName соотвественно ?
Вопрос такой возник вследствии твоего высказывания о том что:
> БД создаются (если их нет) при креате форм
Код создания "БД" или все же dbf файлов ?
Севостьянов Игорь (2002-12-17 12:48:00) [5]Кстати следуя из твоих неточных описаний в DataModule ты сделал 18 TTable объектов, будет интересно, что ты прописываешь в таком случае в свойствах DataBaseName и TableName соотвественно ?
Вопрос такой возник вследствии твоего высказывания о том что:
> БД создаются (если их нет) при креате форм
Севостьянов Игорь (2002-12-17 12:42:00) [6]Когда руки кривые - не только компилятор Делфи будет ругаться...
Определись сначала, что для тебя БД и что таблица и расскажи всем присутсвующим - складывается впечатление, что ты путаешь некоторые понятия...
Потом будем дальше разбираться
_BasiL_ (2002-12-17 12:25:00) [7]TDataBase я не использую, у меня DataModule и на нем размещены все БД. БД создаются (если их нет) при креате форм, а затем активизируются. А у одно БД при активации все работает, а если ее деактивировать, то ругается на алиас.
Anatoly Podgoretsky (2002-12-17 10:48:00) [8]Давай подобности по настройкам TDatabase
stone (2002-12-17 10:36:00) [9]
> Делов в том, что алиал и название указаны, просто когда
> БД активирована, то програ работает корректно, а если поставить
> FALSE, то при компиляции прога ругается на неизвестный алиас
> :-(
Если речь идет о TDatabase, то так и будет.
Anatoly Podgoretsky (2002-12-17 10:25:00) [10]Зачем тебе 18 баз, сделай одну на 18 таблиц
_BasiL_ (2002-12-17 10:13:00) [11]Делов в том, что алиал и название указаны, просто когда БД активирована, то програ работает корректно, а если поставить FALSE, то при компиляции прога ругается на неизвестный алиас :-(
_pavel_ (2002-12-17 09:54:00) [12]А кого ты активизируешь в tTable или tQuery ?
Лучше всего использовать алиас, и указать его во всех
tTable и tQuery, либо прописать полный путь к таблицам
в Table1.TableName := "c:\xxx\my.dbf";
_BasiL_ (2002-12-17 08:25:00) [13]Похоже никто с такой проблемой не сталкивался?