![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не подцепляется dbf-файл! [D7, dBase, FoxPro]
cvg © (2006-10-23 14:24:00)В Инспекторе вроде всё прописал, но при запускВопрос от чайника: е программы на экран вылазит приглашение ввести логин и пароль. Поскольку у меня их не предумотрено (а собственно, нельзя ли отключить появление этого приглашения?), я просто нажимаю "ОК", на что мне вылазит сообщение "Project .... faised exception class EDBEngineError with message 'Invalid table name'. ...". И в чем может быть причина???
cvg (2006-10-24 17:20:00) [1]Кстати, когда я в компоненте TTable в параметре DatabaseName выбираю имя ODBC-соединения, то первый раз происходит вызов запроса логина-пароля, а когда указываю там то же имя, что и в саком же поле компонента TDatabase, вызова запроса не происходит. Значит, между собой они точно связываются. А сама прога стала сейчас срубаться с сообщением об ошибке "Invalid table name"...
cvg (2006-10-24 14:25:00) [2]А хз. Вот, кстати, чего интересного еще нашел. При кликом правой кнопкой мыши на компоненте TDatabase и выборе пункта Explore удается найти искомый dbf-файл MM и просмотреть его структуру. То же самое и в пункте Explore компонента TTable, но вот в его же пункте Fields Editor список полей пуст... Что бы это значило?
Anatoly Podgoretsky (2006-10-24 14:16:00) [3]
> и пользоваться, видимо, ADO?
Разве такое предложение было, а в АДО случайно не ODBC ли собрался использовать.
cvg (2006-10-24 13:47:00) [4]Итак, могу сознаться, что ODBC у меня сконфигурирован (иначе бы у меня предыдущий экспорт из другой системы в DBF не шел). Собственно, потому и хочу использовать ODBC. что раз уж там он сработал, так и тут пусть сработает. Других конкретных советов вроде не прозвучало, кроме как забить на ODBC... и пользоваться, видимо, ADO?
Elen (2006-10-24 13:24:00) [5]
> а он черт знает что
Зато этот "черт" работает нормально. По крайней мере у меня никогда не было таких проблем как у автора
Anatoly Podgoretsky (2006-10-24 13:07:00) [6]Elen © (24.10.06 12:33) [41]
Так ты же используешь Native драйвер, а он черт знает что.
sniknik (2006-10-24 12:40:00) [7]> А чего с DBF мудрить?
твоя правда, чего с ним мудрить? попросту не использовать да и все... так я и делаю. в смысле для баз, как формат обмена он почти идеален, во много лучше популяризируемого ныне xml.
Elen (2006-10-24 12:33:00) [8]
> Anatoly Podgoretsky
А чего с DBF мудрить? Я только ставлю полный путь в DatabaseName, выбираю в TableName таблицу и больше ничего не меняю - в результате все работает.
sniknik (2006-10-24 12:31:00) [9]> Ладно, короче, параметры в инспекторе TDatabase такие:
ну наконец то.... !!!!
> AliasName = файлы dBase
используешь ODBC алиас, наверняка он не сконфигурирован, зайди в администрирование компа (панель управления) запусти "Источники данных (ODBC)" найди "файлы dBase" открой и пропиши явно путь базы.
Elen © (24.10.06 11:59) [32]
> В Ttable.DatabaseName выставляй полный путь.
тогда будет использован "найтиве" BDE драйвер, уверен что это нужно? (если его использовать приглашения ввода пароля не было бы с самого начала)
Anatoly Podgoretsky (2006-10-24 12:20:00) [10]Elen © (24.10.06 12:18) [38]
Ну не буду я же тебя распрашивать как у тебя сделано, я и так в курсе насчет твой квалификации, так что это лишнее.
Elen (2006-10-24 12:18:00) [11]
> Будет, еще как будет
У меня ж не спрашивает
Anatoly Podgoretsky (2006-10-24 12:15:00) [12]
> Elen © (24.10.06 11:59) [32]
> В Ttable.DatabaseName выставляй полный путь. Никакого логина
> спрашивать не будет
Будет, еще как будет, а проблема в неверном выборе драйвера. Ну не только, есть и посерьезнее причины, но не будем о грустном.
Anatoly Podgoretsky (2006-10-24 12:13:00) [13]Elen © (24.10.06 11:59) [32]
Можно и нужно и это же самое посоветовал Desdechado в 3, а не какой то пароль и его обход, Не будет явно использовать, так система его неявно создаст, но уже со своими понятиями по параметрам.
Anatoly Podgoretsky (2006-10-24 12:12:00) [14]
> cvg (24.10.06 11:54) [31]
> Ладно, короче, параметры в инспекторе TDatabase такие:
> AliasName = файлы dBase
Вот и более конкретная информация появилась, не так и долго пришлось ждать.
А зачем тебе доступ через ODBC ведь криво же. Чем не устраивает родной драйвер, к которому все равно придет тот же самый ODBC, только кривым путем.
Anatoly Podgoretsky (2006-10-24 12:10:00) [15]
> Чтобы избавиться от запроса логин-пароль. Desdechado в [3]
> посоветовал.
Ничего подобного Desdechado не советовал в 3, у нас наверно разные ветки.
Anatoly Podgoretsky (2006-10-24 12:08:00) [16]
> А мне выше в это же ветке посоветовали -- чтобы избавиться
> от запроса ввести логин и пароль.
А откуда в ДБА пароль? Изродясь не было, ты наверно, что то не то используешь, я же говорю загадками говоришь, а информации крохи.
Elen (2006-10-24 11:59:00) [17]
> cvg
ВУХ!!! Я ж тебе говорю не используй TDataBase.
В Ttable.DatabaseName выставляй полный путь. Никакого логина спрашивать не будет
cvg (2006-10-24 11:54:00) [18]Ладно, короче, параметры в инспекторе TDatabase такие:
AliasName = файлы dBase
Connected = True
DatabaseName = Database1
(при попытке указать прямой путь Connected в True не ставился -- выдавал ошибку)
Параметры в инспекторе TTable:
Active = True
DatabaseName = Database1
TableType = ttDBase
В TableName при этом список таблиц не вываливается :(. При попытке в DatabaseName прописать путь к директорию, список таблиц вываливается, но при выполнении влет по ошибке типа "BDE не смог загрузить драйвер.
Elen (2006-10-24 11:22:00) [19]Чтобы избавиться от запроса логин-пароль. Desdechado в [3]
посоветовал как вариант
ЮЮ (2006-10-24 11:20:00) [20]И все-таки попробуй и у DataBase и у Table указать один и тот же DataBaseName - абсолютный путь.
При этом убей первый DataBase. Создай новый. Пропиши в DataBaseName абсолютный путь. Поизменяй Connected, отключи loginpromp.
Теперь у Table укажи тот же самый DataBaseName - абсолютный путь. Выбери TabeName. Поизменяй Асtive