Вниз
Скачать: CL | DM;

создание таблиц бд в классе   Найти похожие ветки 

← →
LDV   (2011-12-05 13:33) [0]

В классе TMyClass = class(TObject) будет создаваться и открываться несколько таблиц БД. Для того чтобы их создания необходимо передавать DatabaseName, SessionName. Как правильнее всего сделать:

1. Передавать через конструктор const DatabaseName, SessionName: string;

2. Передавать через конструктор Database: TIBDatabase;


← →
RWolf ©   (2011-12-05 13:38) [1]

передавать имя БД, я считаю.
придётся создавать TIBDatabase, зато можно будет использовать класс в разных потоках.


← →
Ega23 ©   (2011-12-05 13:42) [2]

Зависит от.
Если разные потоки - то передавать полный ConnectionString (Host, Port, DBName, UserName, Pwd, ещё какие-либо параметры)
Если поток один - просто передавать коннект.

Это вне зависимости от СУБД.


← →
ДВМ   (2011-12-05 13:59) [3]

Ok, Еще один момент тогда хочу уточнить. у меня есть 2 класса TMyClass1 = class(TObject) и TMyClass2 = class(TObject).

TMyClass2 всегда будет создаваться только в внутри класса TMyClass1. В нем также будут создаваться таблицы. Как правильнее организовать связь чтобы для создания и открытия таблиц в обоих классах использовались одни теже DatabaseName, SessionName).


TMyClass2 = class(TObject)
public
 constructor Create(MyClass1: TMyClass1);
 function MyMethod1: Boolean; //<- создаются и открываются таблицы БД
end;


TMyClass1 = class(TObject)
private
 FMyClass2: TMyClass2;
public
 constructor Create(const ADatabaseName, ASessionName: string); //<-создаются и открываются таблицы БД, создается экземпляр класса TMyClass2.
end;


незнаю насколько это грамотно, но пока что думаю сделать в классе TMyClass1 property DatabaseName, SessionName и из класса TMyClass2 через передаваемый в конструкторе параметр MyClass1 читать их значения и создавать таблицы


← →
Медвежонок Пятачок ©   (2011-12-05 14:01) [4]

Правильнее не заморачиваться с классами, тем более их почему-то стало уже больше одного.

Обычная библиотечная функция и все.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.005 c
8-1222932092
AlexOld
2008-10-02 11:21
2012.03.18
Удалить часть данных из открытого файла


2-1323190986
Zhuck01
2011-12-06 21:03
2012.03.18
как найти символ в строке


2-1323158524
Scott Storch
2011-12-06 12:02
2012.03.18
поиск по таблице бд


3-1273132808
vlgrig1961
2010-05-06 12:00
2012.03.18
Ошибка ORA-0104


15-1322326868
boriskb
2011-11-26 21:01
2012.03.18
Вакансии




   Наверх