Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Ошибка при редактировании базы


Автор: ImA 3.12.2007, 09:13
Здравия желаю.
помогите, пожалуста, разобратся, при редактирвоании базы, подключенной к таблу vid, выскакиет ошибка (см. рисунок)
в ошибке путь до рабочего каталога правильный... может у дельфы проблемы с русскими буковками?
Код

BaseDir := ExtractFilePath(Application.ExeName);
..........
vid.DatabaseName:=basedir;         //для редактирования
ds_vid.DataSet.Active:=true;

никто не знает в чем дело...  smile 

Автор: Olegan 3.12.2007, 11:12
Код

vid.DatabaseName:=basedir;


вот эта сторока меня смущает, приплюсуй сюда имя базы

Код

vid.DatabaseName:=basedir+'vid.dbf';


или

Код

vid.DatabaseName:=basedir+'\'+'vid.dbf';


Потом путь что-то уж больно длинный до базы, может обойдемся без document and settings? smile 

Стоп погоди! smile 
а зачем...?
Код

vid.DataSet.Active:=true;


может лучше...

Код

Vid.Active:=true;

Автор: Данкинг 3.12.2007, 11:24
Лично меня смутили бы пробелы в названии каталогов.

Автор: ImA 3.12.2007, 11:25
vid - это Ttable
ds_vid - это Tdatasourse на vid
nagruzka.bd - так называется база, с которой идет работа, но никак ни вид... я же вложила картинку 

Автор: Olegan 3.12.2007, 11:37
Цитата

vid - это Ttable
ds_vid - это Tdatasourse на vid


ну вот я и пишу:
Код

Vid.Active:=true;


Цитата

nagruzka.bd - так называется база, с которой идет работа, но никак ни вид... я же вложила картинку


так попробуй:
Код

vid.DatabaseName:=basedir+'nagruzka.bd';
//или
vid.DatabaseName:=basedir+'\'+'nagruzka.bd';
//не помню, нужен там \ или нет.


Цитата

Лично меня смутили бы пробелы в названии каталогов.


тоже верно. smile 

Автор: ImA 3.12.2007, 12:07
у меня не одна база в проекте, и все таким вот образом подключены и активизированны, но глючит только эта...
я сделала как Вы сказали, переместила папку в корневище диска ц, откомпилила - та же картина при редактировании...
потом добавила vid.DatabaseName:=basedir+'\'+'nagruzka.DB'; и vid.Active:=true;, он вообще выдал неправильный адрес до проекта и руганулся на неправильную директорию ц\нагрузка и правильно, ведь она не там =)
кошки-мышки, чесслово, безо всякого такого - вотч высвечивает правильный путь
кажется я поняла...
первым создается дата модуле... и только при создании формы1 инициализируется   BaseDir...
встал вопрос о том, как в дата модуле определить BaseDir := ExtractFilePath(Application.ExeName);

Автор: ImA 3.12.2007, 12:31
все, проблема решена  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)