Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
Может и глюк, но мне понравилось :) Дано: В сети находятся разные базы: ASA 6.0.2 и ASA 9.0.2. Подключаюсь одним приложением к обеим базам через ODBC используя один DSN. Т.е. одно подключение - 'DSN=data;ENG=duta;DBN=data;uid=dba;pwd=sql', а второе 'DSN=data;ENG=data;DBN=data;uid=dba;pwd=sql'. Сначала решил, что драйвера dbodbc6.dll и dbodbc9.dll взаимозаменяемы, ну и логично ждать каких-нить глюков. Тем более что кодовые страницы по умолчанию разные 866RUS и 1251. Заменил одно на другое - все работает. Без драйвера по умолчанию не работает, без его указания тоже. Поставил в конце концов в качестве драйвера пробел - работает! Странно... Вопрос такой - как вообще можно подключиться к базе минуя ODBC? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2006, 20:32 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
grachМожет и глюк, но мне понравилось :) Никаких глюков. Действительно к базе версий от шестой до девятой можно подключаться через ODBC драйвера любой версии. grachПодключаюсь одним приложением к обеим базам через ODBC используя один DSN. Т.е. одно подключение - 'DSN=data;ENG=duta;DBN=data;uid=dba;pwd=sql', а второе 'DSN=data;ENG=data;DBN=data;uid=dba;pwd=sql'. Два вопроса: 1) Надеюсь ты учитываешь что при одновременном указании DSN и любых других ключевых слов (ENG/DBN/UID/PWD) соответсвующие ENG, DBN и так далее заменять те что были указаны в DSN? :) 2) У тебя в сети ASA6 запущен с именем "dUta" а ASA9 - "dAta"? grachСначала решил, что драйвера dbodbc6.dll и dbodbc9.dll взаимозаменяемы, ну и логично ждать каких-нить глюков. Тем более что кодовые страницы по умолчанию разные 866RUS и 1251.В общем, драйвера действительно взаимозаменяемы в очень широких рамках. Разница между ними есть, но не особо большая. Самая серьезное с чем ты столкнешься это разная работа с кодовыми страницами. В версиях до восьмой ODBC мог подключать дополнительную DLL называющуюся translator которая делала перекодирование страниц на клиенте. В девятой версии клиентский транслятор убили, теперь этим занимается сам серевер по получению опций LANG и CHARSET от клиента в строке подключения. Но если твоя клиентская программа сама занимается перекодированием - то никаких проблем быть не должно вообще. grachЗаменил одно на другое - все работает. Без драйвера по умолчанию не работает, без его указания тоже. Поставил в конце концов в качестве драйвера пробел - работает! Странно... Э? Это как это, "пробел в качестве драйвера"??? Ты не путаешь команды DSN и DRIVER случаем? :) DSN - выбирает предопределеную через ODBC Administrator, и сохраненую в регистри, строку подключения. Если не хочешь сохранять строку подключения в регистри, то можешь указывать драйвер напрямую. Например "DRIVER={Adaptive Server Anywhere 9.0};ENG=data;DBN=data;UID=user;PWD=password" Полное название драйвера смотри на вкладке Drivers в ODBC Administrator. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2006, 21:04 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
"White Owl" сказал все верно, за исключением того, что в 9-м драйвере АСА тоже есть возможность указать транслятор. Т.е. его не убили. Просто в сервере добавили встроенный функционал по перекодированию, вследствии чего необходимость в трансляторе отпала. Да и клиентская программа необязательно должна уметь сама перекодировать, чтобы перейти с одной АСА на другую без проблем. Мы без проблем переходили с 6 АСА на 9, со сменой кодовой страницы и без перестановки драйверов(т.е. остались работать драйвера 6-ки). 6й АСА-866 + 6й драйвер + транслятор = 9й АСА-1251 + 6й драйвер Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2006, 22:38 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
Спасибо за разъяснения. 1. DSN и DRIVER не путаю, но понятия драйверов я все таки перепутал, т.е. имел в виду сами dll, но напрямую при подключении указывать драйвер почему-то не получается. 2. в сети ASA6 запущен с именем "dUta" а ASA9 - "dAta". Это не суть важно, на разных машинах в сети можно указать базы с одинаковыми параметрами, главное указать host. 3. Без предопределенного DSN в регистри подключение не происходит. Поэтому и спрашиваю: как без регистри подключаться? А это возможно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 10:01 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
grach wrote: > т.е. имел в виду сами dll, но напрямую при подключении указывать драйвер > почему-то не получается. Ты бы хоть написал, что за прога, на чём написана... > без регистри подключаться? А это возможно! С полпинка . Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 10:36 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
Интересует: с полпинка через ODBC без регистри - это как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 12:22 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
kot777 wrote: > Интересует: с полпинка через ODBC без регистри - это как? Например, так (PB9): SQLCA.DBMS = 'ODBC' SQLCA.DBParm = "ConnectString='Driver=Adaptive Server Anywhere 8.0;COMMLINKS=shmem,tcpip;ENG=******;DBN=******;UID=******;PWD=******'") Connect; Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 12:29 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
[quot Dim2000] Например, так (PB9): SQLCA.DBMS = 'ODBC' SQLCA.DBParm = "ConnectString='Driver=Adaptive Server Anywhere 8.0;COMMLINKS=shmem,tcpip;ENG=******;DBN=******;UID=******;PWD=******'") Connect; Спасибо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 12:41 |
|
||
|
Подключение к базе ASA
|
|||
|---|---|---|---|
|
#18+
В догонку ... SQLCA.DBParm = "ConnectString='Driver=Adaptive Server Anywhere 8.0;COMMLINKS=shmem,tcpip;ENG=******;DBN=******;UID=******;PWD=******'") - Это для сетевого подключения Для приложения, использующего personal database надо еще указать файл базы с помощью DBF: SQLCA.DBParm = "ConnectString='Driver=Adaptive Server Anywhere 8.0;COMMLINKS=shmem;ENG=******;DBN=******;DBF=<DataBase file>;ASTART=yes;ASTOP=yes;UID=******;PWD=******'") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 13:22 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=33634690&tid=2012948]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
74ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 428ms |

| 0 / 0 |
