Конференция "Базы" » Ошибка при создании таблицы через ADO [D6, MSSQL]
 
  • leonidus (18.05.10 10:33) [0]
    Есть база MS Access с одной таблицей. Нужно добавить в нее еще одну таблицу.

    Делаю так:

    ADODataSet1.Close;
    ADODataSet1.CommandText:='CREATE TABLE 1234 (fl_name char(255), dt char(255))';
    ADODataSet1.Open;

    После выполнения кодаполучаю ошибку "Текущий проводник не поддерживает возврат нескольких наборов записей в результате одной операции". Однако открыв базу в аксесе вижу что таблица создалась. Как же избежать этой ошибки и корректно создать таблицу, чтобы потом в нее можно было писать?
  • Sergey13 © (18.05.10 10:47) [1]
    > [0] leonidus   (18.05.10 10:33)
    > ADODataSet1.Open;

    Все правильно. Ты же указал ОТКРЫТЬ набор данных. А надо было только ВЫПОЛНИТЬ. Т.е. Execute или как там в ADO.
  • Ega23 © (18.05.10 11:17) [2]
    ADOCommand.Execute + F1
  • Плохиш © (18.05.10 11:33) [3]
    Многолетнее обучение программированию на форуме?
  • leonidus (18.05.10 12:27) [4]
    ADOCommand не хочется использовать. Я думаю что все что нужно может сделать и ADODataSet.

    Про ADODataSet1.Open понял, спасибо за наводку! Однако у ADODataSet нет метода Execute, есть ExecuteOptions но полагаю это не то. Как же создать таблицу?
  • leonidus (18.05.10 12:29) [5]
    Попробовал так:
    ADODataSet1.Active:=false;
    ADODataSet1.CommandText:='CREATE TABLE 1234 (fl_name char(255), dt char(255))';
    ADODataSet1.Active:=true;

    тоже самое. Таблица создалась, но получил ошибку...
  • Медвежонок Пятачок © (18.05.10 12:31) [6]
    ADOCommand не хочется использовать.

    Зато ошибку получать видимо хочется.
  • leonidus (18.05.10 12:42) [7]
    Медвежонок Пятачок, ошибку тоже не хочется получать. Я просто не пойму, ADODataSet в принципе не может создать таблицу или я просто не умею его готовить?
  • Ega23 © (18.05.10 12:43) [8]

    > ADOCommand не хочется использовать. Я думаю что все что
    > нужно может сделать и ADODataSet.


    Вообще-то всё что нужно умеет делать как раз ADOCommand. Впрочем, ты в своём праве, продолжай думать так, как считаешь нужным.
  • Медвежонок Пятачок © (18.05.10 12:45) [9]
    Я просто не пойму, ADODataSet в принципе не может создать таблицу или я просто не умею

    По моему ты предыдущем посте сказал, что таблица создалась датасетом.
  • Anatoly Podgoretsky © (18.05.10 15:55) [10]
    > leonidus  (18.05.2010 12:27:04)  [4]

    Ну тогда ни не приставай к нам.
  • leonidus (18.05.10 17:29) [11]
    Таблица датасетом создается но и ошибка после этого появляется. Мне же нужно чтобы и и таблица создалась и ошибки не было. Ставлю вопрос иначе. Для корректного создания таблицы, мне необходимо использовать ADOCommand вместо ADODataSet ?

    Anatoly Podgoretsky, лично к вам никто не пристает. Ваше надменное поведение к новичкам к счастью не характеризует всех участников этого форума.
  • Sergey13 © (18.05.10 17:37) [12]
    > [11] leonidus   (18.05.10 17:29)

    Тебе шашечки или ехать? (с) старый анекдот
  • Медвежонок Пятачок © (18.05.10 17:50) [13]
    Таблица датасетом создается но и ошибка после этого появляется.

    И чего?
    Загасить эксепшен слабо после стольки лет обитания на форуме?
  • Медвежонок Пятачок © (18.05.10 17:53) [14]
    Для корректного создания таблицы, мне необходимо использовать ADOCommand вместо ADODataSet ?

    У тебя таблица создалась?
    Имена полей те, что просил?
    Типы полей те, что ты хотел?
    Имя таблицы то, что ты просил?

    Таблица корректно создалась или есть претензии к пуговицам?
  • Медвежонок Пятачок © (18.05.10 17:56) [15]
    мне необходимо использовать ADOCommand вместо ADODataSet ?

    Нет, тебе не необходимо и даже нельзя создавать ADOCommand вместо ADODataSet.

    Потому что

    leonidus   (18.05.10 12:27) [4]
    ADOCommand не хочется использовать.


    Еще вопросы есть?
  • Плохиш © (18.05.10 19:36) [16]
    Больной скорее мёртв, чем жив.
  • Anatoly Podgoretsky © (18.05.10 21:19) [17]
    > Плохиш  (18.05.2010 19:36:16)  [16]

    Он ошарашен, чего это к нему пристают, требуют использовать какой то
    TAdoCommand - да пошли они подальше.
  • sniknik © (18.05.10 21:38) [18]
    у него подход не поменялся с 2003 года, тот же стиль поведения, тот же ламеризм.

    > ADODataSet в принципе не может создать таблицу или я просто не умею его готовить?
    в принципе может, может даже без данной ошибки, но только "через задницу" т.к. предназначен для подобных запросов ADOCommand, ADODataSet для других.
  • leonidus (18.05.10 22:59) [19]
    Спасибо за помощь
 
Конференция "Базы" » Ошибка при создании таблицы через ADO [D6, MSSQL]
Есть новые Нет новых   [134433   +22][b:0][p:0.001]