Всё и сразу! Как получить всю таблицу в ODBC?

Тема в разделе "WASM.WIN32", создана пользователем Z3N, 24 фев 2009.

  1. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    First:
    Можно ли получить сразу все нужные записи, а не выуживать по одной при помощи SQLFetch? Насколько я понимаю, надо копать в сторону SQLBulkOperations, но я не въезжаю как ей пользоваться. И вообще, не совсем понятно возможно ли это в принципе....
    Second:
    Имеем запрос SQL: SELECT main.name,main.status,main.about_person FROM main WHERE main.status IS NOT NULL.
    Если сделать это запрос в Access, то он выполнится вполне корректно, а когда я делаю этот запрос в своей программе с помощью ODBC, то результат совсем не радует. Он норамльно выбирает данные где содержимое main.status отличается от нуля и правильно возвращает все данные. Если же main.status IS NULL, то он всё равно возвращает данные (при этом не SQL_SUCCES, а SQL_SUCCCES_WITH_INFO), но весьма странным образом,main.name и main.status не содержат данные, а main.about содержит, причём, корректные.... Вот объясните мне, почему возвращаются данные, которые не должны возвращаться вообще? Следующей выборкой мне надо получить данные, где main.status IS NULL, и это, естественно, у меня не получается....
    Third:
    Да, еще, кое-что... вопросы по правильности кода должны отпасть сами собой потому, что все функции до этого не возвращают код ошибки.
     
  2. irrona

    irrona Member

    Публикаций:
    0
    Регистрация:
    26 май 2004
    Сообщения:
    178
    Адрес:
    Тирасполь
    может курсор не очищаешь перед второй выборкой?
     
  3. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    А оно надо?! По-моему, если я очищу курсор, то собьется и указатель, и я буду получать всё время одну и туже запись.... Разве я не прав?! Жаль, что никто ничего не знает про Bulkoperations
     
  4. irrona

    irrona Member

    Публикаций:
    0
    Регистрация:
    26 май 2004
    Сообщения:
    178
    Адрес:
    Тирасполь
    Z3N

    Код (Text):
    1. Жаль, что никто ничего не знает про Bulkoperations
    Смотря что ты имеешь в виду под этим термином. В SQL Server от Microsoft для массовой загрузки данных используются дополнительные утилиты (isql, osql и т.п.)
     
  5. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    Можно чуть по-подробнее? Что за утилиты?
    Когда я говорил про Балкоператионс я имел в виду возможность получить сразу все строки, а не выуживать по одной....
     
  6. irrona

    irrona Member

    Публикаций:
    0
    Регистрация:
    26 май 2004
    Сообщения:
    178
    Адрес:
    Тирасполь
    Прошу прощения. Утилиты isql и osql используются для выполнения TSQL. А для массовой загрузки данных (импорт-экспорт) используется утилита bcp. Почитать о ней можно здесь: http://msdn.microsoft.com/en-us/library/ms187042.aspx. Но врядли это то, что тебе нужно. К тому же данный вопрос выходит за рамки раздела форума.