TDatabase
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



TDatabase Expand / Collapse
Автор
Сообщение
31.07.2001 18:09
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 13.12.2001 16:04
Сообщ.: 28, Visits: 309
Есть:
TDatabase.Create ....
TDatabase.AliasName:='AAA'; (настроено в BDE)
TDatabase.DatabaseName:='BBB';
Open - и вылетает с сообщением 'Duplicate database Name BBB'

ничего не помогает, перебрал все комбинации всех параметров.
В BDE - открывается, при размещении компонента на форме - открывается,
при создании его через Create - нет.
В чем дело? подскажите, если кто сталкивался.
Сообщ. #718145
01.08.2001 18:40
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 23.07.2002 13:31
Сообщ.: 52, Visits: 573
А У ТЕБЯ cлучайно не Create(nil)?
А по коду дельфи такая фигня если refcount <> 0 т.е . может она уже открыта кем-то! Может просто перезагрузиться ?
Сообщ. #718318
01.08.2001 18:47
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 13.12.2001 16:04
Сообщ.: 28, Visits: 309
Да, Create(nil), но никто к базе больше не подключен - гарантирую.
Да я уже всё сделал через TADOConnection ...
хотя TDatabase, по ходу, гораздо быстрее работает, а мне это позарез важно...
Сообщ. #718323
01.08.2001 19:08
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 23.07.2002 13:31
Сообщ.: 52, Visits: 573
Я точно не знаю! Но поставь не нил а форму свою ! Может заработать ! Я
встречал такие закидоны у дельфи!
Сообщ. #718331
01.08.2001 19:12
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 13.12.2001 16:04
Сообщ.: 28, Visits: 309
А нету формы - TDatabase в отдельном потоке открывается.
А давать ему овнера - форму (а она будет из главного потока) - не думаю, что правильно.
Попробую - расскажу.
Сообщ. #718333
01.08.2001 19:27
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 23.07.2002 13:31
Сообщ.: 52, Visits: 573
Создай временную форму левую прям в потоке! Залипуху типа невидимую! Может заработатет!
Сообщ. #718335
01.08.2001 19:38
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 23.07.2002 13:31
Сообщ.: 52, Visits: 573
И КСТАТи делай Application .CreateForm(TForm,Form); и ни как иначе!
Сообщ. #718336
22.08.2001 13:31
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 31.01.2002 10:28
Сообщ.: 33, Visits: 364
Попробуй в потоке создать новый TSession
потом его назначить этому database.
Вроде это специально для того,
когда из разных потоков лезешь в базу.
Сообщ. #721224
22.08.2001 14:05
Junior Member

Junior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior Member

участник
Last Login: 10.11.2006 3:19
Сообщ.: 21, Visits: 233
Все понятно - в потоке открывается...
TSession - обязательно!
Скорее всего крик о повторении name когда открывается вторая TDatabase с тем же именем и в той же сессии
PS у Session поставить AutoSessionName = true.