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

Вниз

Имена баз, режим конструктора таблицы, визуальное создание связей   Найти похожие ветки 

 
6op9I   (2005-01-07 21:34) [0]

Помогит пожалуйста, как с MMSQL сервера считать имена всех баз данных?

Еще такой вопрос: как в DBgrid вывести выбранную таблицу в режиме конструктора, т.е.:
Имена полей|Типы полей|Длина

и считать с сервера все допустимые на нем тыпы данных.

Да! и как созать в окне еще маленькие окна (Имена таблиц, в которых будут находиться поля таблиц) и соединять поля мышкой (делать связи между таблицами) т.е.:
______________________________________
|  __________                         |
|  |Таблица1 |         _________      |
|  ----------          |Таблица2|     |
|  |   поле1 |-|       ---------      |
|  |   поле2 | |-------|поле1   |     |
|  |   поле3 |         |поле2   |     |
|  |   поле4 |         ----------     |
|  ----------                         |
|                                     |
|                                     |


 
sniknik ©   (2005-01-08 00:58) [1]

это задание на курсовую? прям ентерпрайз менеджер описал. ;о)
давой по чуть чуть, не все сразу (и обьемно), или думаеш это вызовом обной (пары) процедур делается?

начни с изучения ADO, там смотри метод OpenSchema, получение всей инфы для реализации описаного можно получить через него. (но инфа это еще не все ;о))


 
6op9I   (2005-01-08 14:44) [2]

Ну чтобы считать с уже известнй базы имена всех таблиц достаточно одной ф-ции... может есть ф-ция возвращающая и имена баз.

чтобы в DBGrid вывести таблицу в режиме конструктора вроде бы надо использовать ADODataSet тока не знаю как

и пожалуйста раскажите поподробнее о методе Open Schema


 
Anatoly Podgoretsky ©   (2005-01-08 17:06) [3]

TDatabase/Session
Если АДО то смотри пример в демос.


 
sniknik ©   (2005-01-08 18:10) [4]

> Если АДО то смотри пример в демос.
ему однозначно нужно ADO юзать (всей инфы что он расписал, с BDE не получить... ну к примеру "связи" это же не что иное как внешние ключи... в BDE не получить (а может просто не знаю как. просветите))

> ... может есть ф-ция возвращающая и имена баз.
> и пожалуйста раскажите поподробнее о методе Open Schema
для примера (два в одном ;)

procedure TForm1.Button1Click(Sender: TObject);

 function GetSQLDatabases(ADOConnection: TADOConnection; BasesItems: TStrings): boolean;
 var
   ADODataSet: TADODataSet;
   CatName: TField;
 begin
   BasesItems.BeginUpdate;
   ADODataSet:= TADODataSet.Create(nil);
   try
     BasesItems.Clear;
     ADOConnection.OpenSchema(siCatalogs, EmptyParam, EmptyParam, ADODataSet);
     CatName:= ADODataSet.FieldByName("CATALOG_NAME");
     while not ADODataSet.Eof do begin
       BasesItems.Add(CatName.AsString);
       ADODataSet.Next;
     end;
   finally
     ADODataSet.Free;
     BasesItems.EndUpdate;
   end;
 end;

begin
 ADOConnection1.Close;
 ADOConnection1.ConnectionString:= "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False";
 GetSQLDatabases(ADOConnection1, ListBox1.Items);
end;

и все, хватит дурью маятся, начинай учится. ;о))

> чтобы в DBGrid вывести таблицу в режиме конструктора вроде бы надо использовать ADODataSet тока не знаю как
ну да конечно ;о)), иш чего захотел, одной функцией конструктор, главное чтобы ADODataSet... ;о))


 
6op9I   (2005-01-09 17:35) [5]

sniknik а как также в listbox вогнать типы полей выбранной таблицы


 
Nikolay M. ©   (2005-01-09 17:51) [6]


> как с MMSQL сервера считать имена всех баз данных?

sp_databases


> в listbox вогнать типы полей выбранной таблицы

INFORMATION_SCHEMA.COLUMNS


> и считать с сервера все допустимые на нем тыпы данных

systypes

?


 
sniknik ©   (2005-01-09 18:55) [7]

> а как также в listbox вогнать типы полей выбранной таблицы
также не получится, по siColumns в аналогичной реализации информация о типах возвращается в поле DATA_TYPE с которое само имеет тип интежер (целое число), потребуются дополнительные преобразования к привычному строковому названию...

а вообще, ты намерен чтонибудь сам делать? или может сразу передаш задание на курсовой мне... попытаешся заинтересовать деньгами (например). ;о)



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

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

Наверх




Память: 0.49 MB
Время: 0.037 c
14-1105430750
malkolinge
2005-01-11 11:05
2005.02.06
Поздравляю с ПОбедой ! Украина !!!!!!!


14-1106221834
1008
2005-01-20 14:50
2005.02.06
Есть предложение


1-1106469959
Эдди
2005-01-23 11:45
2005.02.06
richedit цвет строки


14-1105788361
R0F0S
2005-01-15 14:26
2005.02.06
Chat


1-1106401615
infom
2005-01-22 16:46
2005.02.06
Каким образом лучше сохранять несколько потоков в один файл ?