Конференция "Базы" » Interbase через BDE [D7, IB6.x]
 
  • Spot (15.04.09 09:23) [0]
    1. Можно ли получить список алиасов только типа Interbase?
    2. Как получить путь к базе данных по алиасу?
  • topS (15.04.09 14:48) [1]
    1. получить все, отобрать по типу.
    2. параметр SERVER NAME

    вы вообще БДЕ Администратор запускали, смотрели? запустите, посмотрите
  • Spot (16.04.09 04:03) [2]
    В BDE Администратор запускаю, вижу, что алиасы intrbase есть, файл базы указан в параметре server name...
    А как программно получить полное имя файла БД, по его алиас.
  • topS (16.04.09 09:01) [3]
    Раздел Working with BDE aliases в справке.
  • ЮЮ © (16.04.09 09:06) [4]

    > полное имя файла БД

    это, ИМХО, должно интересовать сервер БД, а тебя только имя(ip) компьютера, на котором крутится сервер и имя БД(алиас)
  • Spot (17.04.09 04:56) [5]
    interbase server стоит на локальной машине.
    Я пишу утилитку. Хочу чтоб юзер выбирал алиас, а утилитка подключается к файлу БД, по его алиасу.
    в Инете нашел только

    procedure TForm1.ListBox1Click(Sender: TObject);
    var
     tStr: array[0..100] of char;
     Desc: DBDesc;
    begin
     if ListBox1.Items.Count = 0 then
       exit;
     StrPLCopy(tStr, ListBox1.Items.Strings[ListBox1.ItemIndex], High(tStr));
     DbiGetDatabaseDesc(tStr, @Desc);
     with Desc do
     begin
       Label1.Caption := StrPas(Desc.szName);
       Label2.Caption := StrPas(Desc.szPhyName);
       Label3.Caption := StrPas(Desc.szDbType);
     end;
    end;



    в результате Label2.Caption := пустое,
    я полагаю, что Desc.szPhyName выдает только PATH для алиасов типа STANDART
    а как получить server name алиаса типа Itrbase?
  • Виталий Панасенко (17.04.09 09:55) [6]

    > Spot   (17.04.09 04:56) [5]

    А нафига то путь тебе? Все равно нужен АЛИАС, больше ничего. Выбрал-подключился
  • MsGuns © (17.04.09 10:00) [7]
    >Spot   (17.04.09 04:56) [5]
    >Хочу чтоб юзер выбирал алиас, а утилитка подключается к файлу БД, по его алиасу.

    Это вообще не юзера дело - выбирать БД, к которой подключаться. Если, конечно, это не программа - сервис.
    Параметры подключения, в т.ч. алиас, следует хранить в настройках приложения (реестр или ini)

    ЗЫ. А почему, кстати, используется биде ? Ведь в Дельфи есть "родные" компоненты (Interbase)
  • Игорь Шевченко © (17.04.09 11:08) [8]

    > Я пишу утилитку. Хочу чтоб юзер выбирал алиас, а утилитка
    > подключается к файлу БД, по его алиасу.


    function TDataModule.GetDataBase (const AliasName: string): string;
    var
     DBParams: TStrings;
    begin
     DBParams := TStringList.Create;
     try
       with dbRPS do
         Session.GetAliasParams(AliasName, DBParams);
       Result := DBParams.Values['SERVER NAME'];
     finally
       DBParams.Free;
     end;
    end;
  • topS (17.04.09 22:38) [9]

    > Игорь Шевченко ©   (17.04.09 11:08) [8]

    так понятно было, что перец справку не читал
  • Spot (20.04.09 04:12) [10]
    Респект Игорю Шевченко, помогло.
 
Конференция "Базы" » Interbase через BDE [D7, IB6.x]
Есть новые Нет новых   [134477   +39][b:0][p:0.001]