1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Связь с Sql через Ado

Тема в разделе "Программирование", создана пользователем RubiN, 03.02.05.

  1. RubiN

    RubiN Активный участник

    6.629
    425
    пишу программу для работы с SQL сервером, использую для доступа компонент ADOConnection. Если БД одна - проблем нет, все соединяется. Для подключения ко второй базе переписываю свойства компонента. Но после этого почему-то не соединяется, пишет что БД уже открыта (операция не допускается, если объект открыт), хотя параметры все те же самые и БД предварительно была закрыта. Если добавлять еще один ADOConnection и потом переключать на него все указатели (DataSet,DataSource) - то все работает. Если короче: для разных БД (кто их знает сколько их будет) хочу использовать один компонент, а не клонировать их для каждой новой базы.
    БД разные в принципе: разные таблицы в РАЗНЫХ базах, с разными таблицами в ОДНОЙ базе проблем тоже нет.
     
  2. Bob

    Bob Активный

    21.795
    2
    Zombie на уровне SQL-запроса нельзя решить проблему? Обращаться ко 2й базе данных через полное имя объекта - dbname.owner.objectname.
     
  3. RubiN

    RubiN Активный участник

    6.629
    425
    ну написал бы кусочек, хотя в принципе я задаю это в
    ADOConnection->ConnectionString=""Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Databasename;Data Source=server";

    ADODataSet1->CommandText="select * from tttttt";

    Databasename- название базы
    ttttt - имя таблицы
     
  4. Bob

    Bob Активный

    21.795
    2
    Zombie прсто пишешь следующий запрос примерно так "select * from database2.dbo.table2" и он будет выполняться из того же коннекта, если достаточно разрешений во второй базе данных.
     
  5. RubiN

    RubiN Активный участник

    6.629
    425
    всё, вопрос снимается, нашел ошибку: переставил 2 строки местами.
    P.S. Надо БОЛЬШЕ пить