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

Вниз

Не подцепляется dbf-файл!   Найти похожие ветки 

 
cvg   (2006-10-23 14:24) [0]

В Инспекторе вроде всё прописал, но при запускВопрос от чайника: е программы на экран вылазит приглашение ввести логин и пароль. Поскольку у меня их не предумотрено (а собственно, нельзя ли отключить появление этого приглашения?), я просто нажимаю "ОК", на что мне вылазит сообщение "Project .... faised exception class EDBEngineError with message "Invalid table name". ...". И в чем может быть причина???


 
sniknik ©   (2006-10-23 14:48) [1]

> нельзя ли отключить появление этого приглашения
можно, есть такое свойство loginprompt в том компоненте коннекта который ты используешь

> ... И в чем может быть причина???
переведи сообщение, получишь причину...


 
cvg   (2006-10-23 15:01) [2]

Пользуюсь Table(DBTables), и никакого loginprompt"а там вижу... :(

А почему же table name вдруг invalid, если в самом инспекторе все подключается путем? Правда в FieldsEditor"е (который вылазит по правой кнопке мыши), почему-то ни одного поля БД нет :((


 
Desdechado ©   (2006-10-23 15:32) [3]

Если ты используешь просто TTable, то при этом неявно создается TDatabase. Лучше создавать его явно, чтобы можно было настроиться в нем. А уж через него подключать TTable.
И помни, что для DBF базой данных является папка с таблицами.


 
cvg   (2006-10-23 16:13) [4]

Ну вот, вставил я еще TDatabase, но все равно подключения не происходит :((.

Параметры TDatabase:

Connected -- False
DatabaseName -- viele (это -- имя директория с DBF-файлами)
Name -- Database1

И уже при попытке создать Connected = true на экран влызит приглашение ввести логин и пароль, а когда я просто жму ОК, появляется сообщение об ошибке: "Invalid configuration paprameter. Alias: viele". Какими тут могут быт логин с паролем, если у DBF"ов их в принципе нет???


 
Плохиш ©   (2006-10-23 16:18) [5]


> cvg   (23.10.06 16:13) [4]

goto [1]


 
Ketmar ©   (2006-10-23 16:20) [6]

>[5] Плохиш(c) 23-Oct-2006, 16:18
>goto [1]
всё. бесконечный цикл получился.


 
cvg   (2006-10-23 16:22) [7]

В смысле? Если я устанавливаю Loginrompt = False, то это же сообщение об ошибке вылазит просто без запроса логина и пароля! Так что что-то ей, похоже, все же нужно... Но вот что???


 
Desdechado ©   (2006-10-23 16:26) [8]

> "Invalid configuration paprameter. Alias: viele"
настроить алиас


 
cvg   (2006-10-23 16:32) [9]

Та-ак... Вместо DriverName выбрал AliasName, теперь само подключение вроде как прошло, но вот в TTanble в пар-ре TableName почему-то список имен DBF-файлов не показывается :((


 
Ketmar ©   (2006-10-23 16:35) [10]

вопрос не в тему: а зачем эти DBF? FireBird -- и все дела...


 
Desdechado ©   (2006-10-23 16:39) [11]

> список имен DBF-файлов не показывается
значит папка не содержит таблиц


 
Anatoly Podgoretsky ©   (2006-10-23 16:52) [12]


> DatabaseName -- viele (это -- имя директория с DBF-файлами)

Странное имя и где в файловой системе оно находится, если хочешь работать без алиасов, то будь добр указать абсолютный путь.


 
cvg   (2006-10-24 07:51) [13]

Набрал полный путь, но ничего не произошло :(. И вообще, мне что-то непонятно, каким образом происходит связь между TDatabase и TTable... IMHO в TTable где-то должно быть указано имя TDatabase как источника данных... Но вот где?


 
Elen ©   (2006-10-24 08:08) [14]


> Набрал полный путь, но ничего не произошло

Не забыл выставить Table.Tabletype в ttFoxPro? (помоему ttDefault это для парадокса)


 
cvg   (2006-10-24 08:19) [15]

У меня стоит TableType = ttDbase.

Вроде, по логике, если в TDatabase параметр Name = Database1, то в TTable параметр DatabaseName должен равняться ему же?


 
Elen ©   (2006-10-24 08:33) [16]


>  то в TTable параметр DatabaseName должен равняться ему
> же?


Разве? DatabaseName - это либо полный путь либо алиас (могу ошибаться)


> У меня стоит TableType = ttDbase.

Попробуй TableType = ttFoxPro, ИМХО...


 
cvg   (2006-10-24 08:46) [17]

Ну да, сейчас DatabaseName = dbfview5 (имя драйвера). Но тогда получается, что никакой связи между TTable и TDatabase просто нет...

Насчет TabeType... Проба выбрать ttFoxPro ни к каким изменениям не привела (да ИМХО и не могла привести, т.к. FoxPro и DBase саму DBF-структуру обрабатывают идентично, а разница только в индексах, которых у меня просто нет).


 
Elen ©   (2006-10-24 09:01) [18]


>  Но тогда получается, что никакой связи между TTable и TDatabase
> просто нет...

Читать [3] внимательно!

>  DatabaseName = dbfview5 (имя драйвера).

Впервые слышу чтоб это свойство принимало драйвер! Путь или алиас - это да. (Или я чего-то не знаю 8) )


 
cvg   (2006-10-24 09:10) [19]

Ну да, не совсем логично, согласен... Но это наиболее логичное из того, что мне вываливалось, когда я раскрывал список. А теперь я перечитал хелп (Use DatabaseName to specify the name of the database to associate with this dataset component. DatabaseName should match the name of a database component used in the application.) и вроде получается так, что там должно быть прописано то имя, что присвоено компоненту TDatabase -- то есть, "Database1". Нов этом случае попытка раскрыть список TableName вызывает сообщение "Unknown databese. Alias: Database1"...


 
Anatoly Podgoretsky ©   (2006-10-24 09:37) [20]

cvg   (24.10.06 07:51) [13]
Загадками говорите, а программирование наука точная


 
cvg   (2006-10-24 09:53) [21]

Причем "загадки", если всё не удается написать чтение DBF"а???

На основании http://fizmat.vspu.ru/citforum/programming/application/data_acc2.shtml (хоть это и по С++) пришел к заключению, что в TDatabase параметр DatabaseName должен быть равен отвлеченному имени, например "Database1". Тогда в TTable в списке на DatabaseName уже вываливается "Database1". Но в TabeleName списка всё равно не получается :(( Хотя в FieldDefs список полей нормально появляется...


 
Elen ©   (2006-10-24 10:24) [22]


> cvg

А зачем тебе TDatabase использовать? Подключайся установкой полного пути к папке с таблицами в Ttable.DatabaseName.


 
cvg   (2006-10-24 10:32) [23]

А мне выше в это же ветке посоветовали -- чтобы избавиться от запроса ввести логин и пароль.


 
Elen ©   (2006-10-24 10:36) [24]


> чтобы избавиться от запроса ввести логин и пароль.

Внимательно читать [12]!


 
cvg   (2006-10-24 10:48) [25]

Дак на фига ж "абсолютный путь", если иначе связи между TDatabase и TTable просто не будет?


 
Desdechado ©   (2006-10-24 11:01) [26]

почитал бы ты букварь, барин
методички какие-нибудь или книжки, коих в сети просто валом


 
Elen ©   (2006-10-24 11:05) [27]


>  если иначе связи между TDatabase и TTable просто не будет?

Зачем тебе эта связь?


 
cvg   (2006-10-24 11:17) [28]


> Desdechado ©   (24.10.06 11:01) [26]
> почитал бы ты букварь, барин
> методички какие-нибудь или книжки, коих в сети просто валом

А то я не в сети это всё нахожу, что ли?


> >  если иначе связи между TDatabase и TTable просто не будет?
>
>
> Зачем тебе эта связь?


Чтобы избавиться от запроса логин-пароль. Desdechado в [3] посоветовал.


 
ЮЮ ©   (2006-10-24 11:20) [29]

И все-таки попробуй и у DataBase и у Table указать один и тот же DataBaseName - абсолютный путь.
При этом убей первый DataBase. Создай новый. Пропиши в DataBaseName абсолютный путь. Поизменяй Connected, отключи loginpromp.

Теперь у  Table укажи тот же самый  DataBaseName - абсолютный путь. Выбери TabeName. Поизменяй Асtive


 
Elen ©   (2006-10-24 11:22) [30]

Чтобы избавиться от запроса логин-пароль. Desdechado в [3]
посоветовал как вариант


 
cvg   (2006-10-24 11:54) [31]

Ладно, короче, параметры в инспекторе TDatabase такие:
AliasName = файлы dBase
Connected = True
DatabaseName = Database1
(при попытке указать прямой путь Connected в True не ставился -- выдавал ошибку)

Параметры в инспекторе TTable:

Active = True
DatabaseName = Database1
TableType = ttDBase
В TableName при этом список таблиц не вываливается :(. При попытке в DatabaseName прописать путь к директорию, список таблиц вываливается, но при выполнении влет по ошибке типа "BDE не смог загрузить драйвер.


 
Elen ©   (2006-10-24 11:59) [32]


> cvg

ВУХ!!! Я ж тебе говорю не используй TDataBase.
В Ttable.DatabaseName выставляй полный путь. Никакого логина спрашивать не будет


 
Anatoly Podgoretsky ©   (2006-10-24 12:08) [33]


> А мне выше в это же ветке посоветовали -- чтобы избавиться
> от запроса ввести логин и пароль.

А откуда в ДБА пароль? Изродясь не было, ты наверно, что то не то используешь, я же говорю загадками говоришь, а информации крохи.


 
Anatoly Podgoretsky ©   (2006-10-24 12:10) [34]


> Чтобы избавиться от запроса логин-пароль. Desdechado в [3]
> посоветовал.

Ничего подобного Desdechado не советовал в 3, у нас наверно разные ветки.


 
Anatoly Podgoretsky ©   (2006-10-24 12:12) [35]


> cvg   (24.10.06 11:54) [31]
> Ладно, короче, параметры в инспекторе TDatabase такие:
> AliasName = файлы dBase

Вот и более конкретная информация появилась, не так и долго пришлось ждать.
А зачем тебе доступ через ODBC ведь криво же. Чем не устраивает родной драйвер, к которому все равно придет тот же самый ODBC, только кривым путем.


 
Anatoly Podgoretsky ©   (2006-10-24 12:13) [36]

Elen ©   (24.10.06 11:59) [32]
Можно и нужно и это же самое посоветовал Desdechado в 3, а не какой то пароль и его обход, Не будет явно использовать, так система его неявно создаст, но уже со своими понятиями по параметрам.


 
Anatoly Podgoretsky ©   (2006-10-24 12:15) [37]


> Elen ©   (24.10.06 11:59) [32]
> В Ttable.DatabaseName выставляй полный путь. Никакого логина
> спрашивать не будет


Будет, еще как будет, а проблема в неверном выборе драйвера. Ну не только, есть и посерьезнее причины, но не будем о грустном.


 
Elen ©   (2006-10-24 12:18) [38]


> Будет, еще как будет

У меня ж не спрашивает


 
Anatoly Podgoretsky ©   (2006-10-24 12:20) [39]

Elen ©   (24.10.06 12:18) [38]
Ну не буду я же тебя распрашивать как у тебя сделано, я и так в курсе насчет твой квалификации, так что это лишнее.


 
sniknik ©   (2006-10-24 12:31) [40]

> Ладно, короче, параметры в инспекторе TDatabase такие:
ну наконец то.... !!!!

> AliasName = файлы dBase
используешь ODBC алиас, наверняка он не сконфигурирован, зайди в администрирование компа (панель управления) запусти "Источники данных (ODBC)" найди "файлы dBase" открой и пропиши явно путь базы.

Elen ©   (24.10.06 11:59) [32]
> В Ttable.DatabaseName выставляй полный путь.
тогда будет использован "найтиве" BDE драйвер, уверен что это нужно? (если его использовать приглашения ввода пароля не было бы с самого начала)



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

Форум: "Начинающим";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.54 MB
Время: 0.045 c
9-1138338645
VolanD666
2006-01-27 08:10
2006.11.12
Ограничение FPS


2-1161798696
Z0$r@H4!G
2006-10-25 21:51
2006.11.12
Richedit поиск


15-1161818872
RAM
2006-10-26 03:27
2006.11.12
Ассоциации с цифрами Помогите прогуглить ?


15-1161522130
PHPDeveloper
2006-10-22 17:02
2006.11.12
Кто сколько часов спит в день


2-1161839521
md
2006-10-26 09:12
2006.11.12
procedure





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