Форум: "Базы";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];
ВнизИмена баз, режим конструктора таблицы, визуальное создание связей Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c