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

Вниз

Проблема с версиями драйверов ODBC   Найти похожие ветки 

 
Yurikon   (2007-08-21 08:13) [0]

Здраствуйте!
Прога работает с Access базой через ODBC драйвер под win2000 и офис 2000. На winXP и офис XP запросы SQL выдают ошибку "Слишком мало параметров". Подскажие как установить драйвер ODBC с XP на машину, где стоит win2000 ?


 
KSergey ©   (2007-08-21 08:53) [1]

Есть такие пакеты от MS c названиями MDAC и Jet (ранее, до версии MDAC 2.6 все это шло в одном флаконе)  - так вот в этих пакетах содержатся все ADO и ODBC драйвера в MS-продуктам.
Скачивается бесплатно с сайта MS последняя версия и устанавливается.

И еще. Бросьте ODBC, работайте с MS Access через ADO.


 
sniknik ©   (2007-08-21 09:01) [2]

ODBC давно уже не имеет собственных драйверов для некоторых баз, в частности для Access с которым работает Jet, а в ODBC-шном "драйвере" простое переопределение вызовов на него... (+ еще там часть которая отвечает за ODBC-шный синтаксис. но это к делу не относится)
т.что для того чтобы была одинаковая версия прост поставь последний SP Jet-а (8-й вроде, поищи на мелкософте).
а вот перенести драйвера с одной системы на другую ты врядли сможешь, да и неправильно это, т.что не стоит даже начинать "заморачиваться".

по поводу ошибки, из справки Jet
Слишком мало параметров. Требуется <число>. (Ошибка 3061)
Для этого запроса с параметрами требуется указать иное количество параметров. Обеспечьте требуемое число параметров и вновь запустите запрос.

В некоторых случаях данное сообщение возникает, когда в качестве запроса с параметрами интерпретируются неизвестные имена полей или выражения. Проверьте, что имена полей, содержащие пробелы или знаки пунктуации, заключены в квадратные скобки [ ].


 
sniknik ©   (2007-08-21 09:11) [3]

> но это к делу не относится
хотя нет, это может относится к делу, чисто теоретически. возьмем 2 варианта установки старый еще с собственным драйвером и "родным", рабочим синтаксисом, и новый в котором после преобразований запроса под синтаксис Jet запрос передается в него... а у него другие резервированные поля, и чтото может быть банально пропущено... а в Jet/Access непонятные веши на месте полей/условий могут интерпретироваться как имена параметров.... вот и несовпадение их количества...

> И еще. Бросьте ODBC, работайте с MS Access через ADO.
это точно, будет лучше без посредников, только уточнение ... через ADO + Jet.


 
Yurikon   (2007-08-21 10:20) [4]

Я и так работаю через ADO. При прямом обращении к базе через Jet скорость будет выше, чем через ODBC ?


 
sniknik ©   (2007-08-21 10:36) [5]

вряд ли. слишком уж редко выполняются команды запросов, и слишком уж маленькая разница между вызовом процедуры и вызовом процедуры внутри другой процедуры.

скорость не в этом, а в алгоритмах и оптимальных методах работы.


 
Виталий Панасенко ©   (2007-08-21 12:34) [6]

Если правильно настроить - сравнима с BDE+Paradox(чуть уступает). Я о навигации по таблицам...


 
yurikon   (2007-08-23 09:03) [7]

Сделал подключение через Jet - ошибка пропала! Видимо в новой версии драйвера ODBC новый синтаксис...Спасибо!

Еще вопрос. Я по таймеру открываю и закрываю таблицу для обновления. В grid`е после этого текущая запись центрируется по вертикале, что не удобно если до обновления текущая запись была например внизу. как отключит это свойство?


 
sniknik ©   (2007-08-23 09:18) [8]

> как отключит это свойство?
не об этом надо думать... а о том как сделать так чтобы не пришлось по таймеру закрывать и открывать таблицы. это вообще прерогатива юзера получать данные в тот момент в который они ему нужны (а не в момент их им редактирования например...).


 
Anatoly Podgoretsky ©   (2007-08-23 14:53) [9]


> В grid`е после этого текущая запись центрируется по вертикале,
>  что не удобно если до обновления текущая запись была например
> внизу. как отключит это свойство?

Не стоит бороться с психологическими заморочками.


 
Yurikon   (2007-08-23 16:55) [10]


> Не стоит бороться с психологическими заморочками.


И то верно. :)

Юзер эти данные не редактирует вообще. Они только для просмотра. А как по другому предложите обновлять содержимое таблице, если не через таймер и св-во Active ?



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

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

Наверх




Память: 0.47 MB
Время: 0.051 c
15-1195679426
Alral
2007-11-22 00:10
2007.12.23
Справка по сетевым компонентам Turbo Delphi


15-1195637042
Nucer
2007-11-21 12:24
2007.12.23
Themida


15-1195624129
GhosTer
2007-11-21 08:48
2007.12.23
Вопрос туп до невозможности, но все таки помогите.


2-1196035767
Dmitry_V
2007-11-26 03:09
2007.12.23
Работа с базами данных в Delphi 2007


15-1195763722
dFedor
2007-11-22 23:35
2007.12.23
Поделитесь материалами





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