Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.17;
Скачать: CL | DM;

Вниз

Почему при Commit e транзакции, свойства Active меняется?   Найти похожие ветки 

 
Sanya_BBB   (2006-10-09 23:00) [0]

Почему при Commit"e транзакции, свойства Active  у всех компонентов  IBQuery становятся False?
Я так думаю из за того что у меня один компонент IBTrancaction и 8 компонентов IBQuery и у всех указана только эта одна транзакции. Что нужно делать в таких ситуациях? Использовать для каждого IBQuery свой компонент IBTrancfction?


 
Zacho ©   (2006-10-09 23:14) [1]

Рекомендую изучить http://www.ibase.ru/devinfo/ibx.htm , а так же и остальные статьи на http://www.ibase.ru/develop.htm


 
unknown ©   (2006-10-09 23:21) [2]

http://www.ibase.ru/devinfo/ibx.htm да и вообще http://www.ibase.ru/
p.s.
пора уже повесить ссылку на ibase.ru, что бы сначала там искали перед
тем, как вопросы задавать.


 
DrPass ©   (2006-10-09 23:31) [3]


> Я так думаю из за того что у меня один компонент IBTrancaction
> и 8 компонентов IBQuery и у всех указана только эта одна
> транзакции. Что нужно делать в таких ситуациях?

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


 
Sanya_BBB   (2006-10-10 13:31) [4]

DrPass ©   (09.10.06 23:31) [3]

Так например у меня один компонент IBQuery, то как мне его соеденить сразу с двумя транзакциями? Или при измененении данных переприсваивать транзакцию? Например так:

перед добавлением данных присвоить компоненту  Query1 вторую транзакцию:

datamodule2.IBQuery1.Transaction:=datamodule2.IBTransaction2;
datamodule2.IBTransaction2.start;
datamodule2.IBQuery1.SQL.Clear;
datamodule2.IBQuery1.SQL.Add("insert into access_table(user_fio, user_pass, user_role) values("+fio+","+pass+", "+role+")");
datamodule2.IBQuery1.Open ;
datamodule2.IBTransaction2.commit;

А потом опять присвоить первую транзакцию:

datamodule2.IBQuery1.Transaction:=datamodule2.IBTransaction2;

Правилно так будет?


 
Sanya_BBB   (2006-10-10 13:32) [5]

Блин ошибся вот так будет :

перед добавлением данных присвоить компоненту  Query1 вторую транзакцию:

datamodule2.IBQuery1.Transaction:=datamodule2.IBTransaction2;
datamodule2.IBTransaction2.start;
datamodule2.IBQuery1.SQL.Clear;
datamodule2.IBQuery1.SQL.Add("insert into access_table(user_fio, user_pass, user_role) values("+fio+","+pass+", "+role+")");
datamodule2.IBQuery1.Open ;
datamodule2.IBTransaction2.commit;

А потом опять присвоить первую транзакцию:

datamodule2.IBQuery1.Transaction:=datamodule2.IBTransaction1;


 
Sergey13 ©   (2006-10-10 13:36) [6]

> Правилно так будет?

Правильно будет почитать то, на что тебе дали ссылку. Еще можно Ф1 нажать.


 
Sanya_BBB   (2006-10-10 13:57) [7]

На самом деле просто физически нет времени читать, завтра уже надо сдавать базу. Если можно по делу пожалуйста.


 
MsGuns ©   (2006-10-10 14:00) [8]

Читать про свойства и методы TIBDataBase, TIBTransaction, TIBDataSet, TIBQuery до посинения. А также "Мир интербэйз" Вострикова&Ковязина


 
MsGuns ©   (2006-10-10 14:02) [9]

>Sanya_BBB   (10.10.06 13:57) [7]
На самом деле просто физически нет времени читать, завтра уже надо сдавать базу.

Прав нет, водить авто не умею, а ехать НАДО ! Торжество воинствующего дилетантизма
Ветку ф топку


 
Sergey13 ©   (2006-10-10 14:07) [10]

> [7] Sanya_BBB   (10.10.06 13:57)

С времени, когда тебе дали ссылку полсуток прошло. А там читать 10 минут.
А времени, пересказывать тебе содержание ссылки и хелпа в краткой форме у меня катастрофически не хватает. У меня пасьянс не сходится.


 
YurikGL ©   (2006-10-10 19:09) [11]


> Почему при Commit"e транзакции, свойства Active  у всех
> компонентов  IBQuery становятся False?

Delphi syntax:

procedure CommitRetaining;

C++ syntax:

void __fastcall CommitRetaining(void)

Description

Call CommitRetaining to permanently store to the database server all updates, insertions, and deletions of data associated with the current transaction and then retain the transaction context. The current transaction is the last transaction started by calling StartTransaction.



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

Текущий архив: 2006.12.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
15-1163187192
TUser
2006-11-10 22:33
2006.12.17
ерытеч


2-1164818064
мишок
2006-11-29 19:34
2006.12.17
Системный файл


3-1160396447
Sanya_BBB
2006-10-09 16:20
2006.12.17
Как присвоить результат запроса select count (*) from mytable?


15-1164366898
WhiteBarin
2006-11-24 14:14
2006.12.17
Как сделать Setup одним файлом в InstalShield 8.0?


8-1146241508
MetalFan
2006-04-28 20:25
2006.12.17
Воспроизвести видео из буфера





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