Форум программистов, компьютерный форум CyberForum.ru

ODBC - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сортировка строк http://www.cyberforum.ru/cpp-beginners/thread372840.html
Помогите написать программу, которая читает строки из файла в массив строк, и выводит их на экран, отсортировав по названию, исключая правовую форму. Т.е. не сравнивает ЗАО , ОАО , ООО Пример: ЗАО Оскол , ОАО Крона , ООО Аристократ Должно получиться: ООО Аристократ , ОАО Крона , ЗАО Оскол Заранее спасибо!
C++ неверный ввод cout<<"\tViberite variant vvoda:\n\n"; cout<<"\t1.Vvod vruchnuy\n"; cout<<"\t2.Iz faila"; int menu=0; cout<<"\n\nVash variant ? (1 or 2): "; cin>>menu; /*while(menu!=1 || menu !=2) Почему данный цикл не работает?(конешно /**/убираю))) { cout<<"Error.Vvedite vash variant: "; cin>>menu; http://www.cyberforum.ru/cpp-beginners/thread372835.html
Подскажите что обозначают выделенные строки. C++
Что обозначают 10,11 и 12 строки??? Заране спасибо. Я знаю что printf -вывод параметров на дисплей, а \n -управляющая последовательность. Но в итоге что обозначают 10,11 и 12 строки я понять не могу. Листининг программы.#include<iostream.h> #include<stdio.h> #include<math.h> int main() { double x1,x2,dx,a,b,c,f; printf("Enter x1,x2,dx,a,b,c \n"); scanf("%lf %lf %lf %lf %lf...
C++ Програмно создать txt файл..
Народ как создать txt файл програмно на c++.? Заранее благодарен)
C++ Составить программу http://www.cyberforum.ru/cpp-beginners/thread372801.html
.Составить программу, которая будет выводить таблицу квадратов для последовательности целых чисел.(C++)
C++ Необходимо найти максимальный элемент во второй части матрицы. Задачи 1) Дан двухмерный массив A размерностью n n (Матрица). Если провести диагонали, то матрицу можно разделить на 4 частей: Необходимо найти максимальный элемент во второй части матрицы. картинка в файле ворд подробнее

Показать сообщение отдельно
gCorn
10 / 10 / 2
Регистрация: 02.08.2011
Сообщений: 28
26.10.2011, 19:19     ODBC
Столкнулся с такой проблемой при работе с базой данных.
Вот таким образом я читаю определенную строку из базы:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CString str;
    str.Format("SELECT field2 FROM table WHERE field1 = %d;",id);
    
    CRecordset rec(db);
    CDBVariant var;
    
    rec.Open(CRecordset::forwardOnly,str,CRecordset::readOnly);
    
    if(rec.IsEOF())
    {
        return CString("Пусто");
    }
 
    rec.GetFieldValue(short(0),var);
        str=*var.m_pstring;
    rec.Close();
    return str;
Но если поле, где должна быть строка не заполнено, то программа вылетает. Пытался к строке понежнее подойти всякими IsEmpty() но все равно вылетает.

Добавлено через 4 часа 30 минут
там генерируется исключение "Access Violation" при обращении к строке. Помощь нужна срочно =\

Добавлено через 33 минуты
Может можно самому поймать это исключение и как-то обработать?
я как-то не силен в этом...

Добавлено через 1 час 7 минут
пока искал ответ сочинил две оды майкрософтам....
в классе CDBVariant есть поле m_dwType;
которое принимает некоторые значения, отталкиваясь от которого можно понять кое значение из его полей является валидным. В том числе есть значение DBVT_NULL при котором как бы ни одно значение не является валидным, однако на деле если читается пустое поле то это поле вместе со всеми принимает случайное значение зависящее от положения небесных тел или еще чего.
НО! Самое эпичное из того что я выяснил по этой теме, что вроде как когда читаешь пустое строковое поле, то m_dwType не является DBVT_STRING.
msdn дает нам простор для изучения любимых технологий ^^

P.S.: Извиняюсь за репост (я создал такую же тему в разделе Visual c++ и базы данных, называется "VC++ && MS access")
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru