Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

как избавиться от диалога

2.2K
22 января 2003 года
maatanin
7 / / 02.12.2002
Вот все могу, а это не могу?
В C++Builder сиквелом через odbc нужно залезть в oracle сервер. При этом всегда запрашивается пароль и логин. Эти штуки известны, но прога работает по ночам в автомате и вводить пароль некому. Как можно обойтись без диалога ввода пароля? В доках прописано, что можно в sql->database отключить диалог. Отключаю и прописываю в параметрах password и sid. Коннекта нету??? Вот здесь - труба. Кому не в лом подскажите?
1.8K
22 января 2003 года
ALI
129 / / 10.01.2003
Цитата:
Originally posted by maatanin
Вот все могу, а это не могу?
В C++Builder сиквелом через odbc нужно залезть в oracle сервер. При этом всегда запрашивается пароль и логин. Эти штуки известны, но прога работает по ночам в автомате и вводить пароль некому. Как можно обойтись без диалога ввода пароля? В доках прописано, что можно в sql->database отключить диалог. Отключаю и прописываю в параметрах password и sid. Коннекта нету??? Вот здесь - труба. Кому не в лом подскажите?



LoginPrompt = false;

1.7K
22 января 2003 года
AndrewSha
64 / / 13.01.2003
А можно разжевать для чайников?

Аналогичная проблема, тока просто пароль вводить надоело.
В BDE Administrator создал псевдоним для Access и каждый раз таккая же проблема.
2.2K
22 января 2003 года
maatanin
7 / / 02.12.2002
Вот так я делаю

sqltst->Database->LoginPrompt = false;
sqltst->SQL->Clear();
sqltst->SQL->Text = "select count(*) from population";
и т.д.

но уже на первой строке access violation 0xFFFFFF. Я так понимаю, что объект sqltst->Database создается где-то в районе sqltst->Open
и пароли там задавать уже поздно. А здесь еще рано. Опять - труба.
358
22 января 2003 года
moonmike
423 / / 18.10.2002
Цитата:
Originally posted by maatanin
Вот так я делаю

sqltst->Database->LoginPrompt = false;
sqltst->SQL->Clear();
sqltst->SQL->Text = "select count(*) from population";
и т.д.

но уже на первой строке access violation 0xFFFFFF. Я так понимаю, что объект sqltst->Database создается где-то в районе sqltst->Open
и пароли там задавать уже поздно. А здесь еще рано. Опять - труба.


Надо что-то типа:
Database->LoginPrompt = false;
Database->Params->Add("UserName = sysdba");
Database->Params->Add("password = masterkey");
Database->Open();
sqltst->DataBase = Database;

Да забыл сказать:
Database - объект класса TDataBase, соответствующий компонент на вкладке Data Access
sqltst->SQL->Clear();
sqltst->SQL->Text = "select count(*) from population";
Попробуй=)))

1.7K
22 января 2003 года
AndrewSha
64 / / 13.01.2003
Цитата:
Originally posted by moonmike

Надо что-то типа:
Database->LoginPrompt = false;
Database->Params->Add("UserName = sysdba");
Database->Params->Add("password = masterkey");
Database->Open();
sqltst->DataBase = Database;


Позволю себе ответить.
Выдаётся всё та-же ошибка, т.к. sqltst->DataBase недоступен по причине его недоступности :).
Assign тоже не помогает.

1.8K
22 января 2003 года
ALI
129 / / 10.01.2003
Цитата:
Originally posted by AndrewSha

Позволю себе ответить.
Выдаётся всё та-же ошибка, т.к. sqltst->DataBase недоступен по причине его недоступности :).
Assign тоже не помогает.



для BDE

1. Находишь в палитре компонентов компонент
ТDatabase и кладеш его на форму
он на закладке Data Access в BCB 5 и ниже а
в 6-ом он на закладке BDE.
2. В инспекторе объектов меняешь у него свойства
AliasName - выбери свой Алиас в списке
DatabaseName - пишешь чтонибудь типа "MyBase1"
LoginPrompt - false
3. в своем TQuery (TTable) меняешь свойствo
DatabaseName - a именно выбираешь из списка
"MyBase1"
4. Database1->Open();
Query1->Open();

1.7K
22 января 2003 года
AndrewSha
64 / / 13.01.2003
Цитата:
Originally posted by ALI

для BDE
.........


Ты бы действительно изменил мир.
Спасибо

2.2K
23 января 2003 года
maatanin
7 / / 02.12.2002
Абсолютно согласен с Andrew. Спасибо. Но эдесь же возник другой вопрос. Для оракла наверное надо не username и password в параметры добавлять, потому что возвращается logon denaed null username given. Ни где не смог найти , что ораклу нужно указать. Может пошлете куда-нибудь?:-)
2.2K
23 января 2003 года
maatanin
7 / / 02.12.2002
Все. СПАСИБО. Оракля работает. оказывается нужно написать User Name=maat Password=maat. Т.е. не username, а именно так - User Name. СПАСИБО.
358
23 января 2003 года
moonmike
423 / / 18.10.2002
Мдя, толи читать люди не умеют, толи с первого раза не понимают, я вроде все тоже самое описал. Даже про закладку, ан нет не поняли=)))
1.7K
23 января 2003 года
AndrewSha
64 / / 13.01.2003
Цитата:
Originally posted by moonmike
Мдя, толи читать люди не умеют, толи с первого раза не понимают, я вроде все тоже самое описал. Даже про закладку, ан нет не поняли=)))


Я же просил разжевать, а тут попробуй разберись...
:)))
Я просто недогнал сначала как DataBase прилепить к sqltst.
Но безусловно ты тоже был прав.

2.2K
23 января 2003 года
maatanin
7 / / 02.12.2002
Про закладки можно было и не писать. А вот почему это не работает, если Database открыть через new, а не с закладки достать.
1.8K
23 января 2003 года
ALI
129 / / 10.01.2003
Цитата:
Originally posted by maatanin
Про закладки можно было и не писать. А вот почему это не работает, если Database открыть через new, а не с закладки достать.



это работает примерно вот так

Код:
TDatabase * Database = new TDatabase(Form1);
TTable* Table = new TTable(Form1);
try
{  
   //............
   Database->DatabaseName="ALI";
   Database->LoginPrompt=false;
   Table->DatabaseName="ALI";
   Database->Open();

   Table->TableName="ALI.TEST";
   Table->Open();
   Table->Close();
   Database->Close();
}__finally
{
delete Database;
delete Table;
}


если посмотреть help

Цитата:

TDBDataSet::Database
__property TDatabase Database = {read=FDatabase};


т.е. read only

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог