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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Dr.Xank
41 / 41 / 12
Регистрация: 13.10.2012
Сообщений: 369
#1

Правильно прочитать данные из базы данных - C++

01.08.2015, 17:24. Просмотров 145. Ответов 0
Метки нет (Все метки)

Всем привет.

Суть проблемы следующая

Использую базу данных SQLLite, на кириллице и английские символы читает нормально, а вот иероглифы(китайские, японские) не читает, выводит одни знаки вопроса.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
sqlite3 *db;
    sqlite3_stmt * pStmt;
    int i, j, coln, rc;
    int b = 1;
       //"SELECT build, date FROM version;"
 
    AnsiString str =  "SELECT " + nameColumn + " FROM " +  NameTabl + ";";
    // открытие (создание) ЅЖ’
 
    if (sqlite3_open("live.db", &db))
    {
        sqlite3_close(db);
    }
 
        // шаг 1 подготовка SQL инструкции к выполнению
        //(компиляция ее в байт-код)
        if (sqlite3_prepare(db, str.c_str(), -1, &pStmt, NULL))
        {
            sqlite3_finalize(pStmt);
            sqlite3_close(db);
        }
        // шаг 2 выполнение SQL инструкций
 
        while((rc = sqlite3_step(pStmt)) == SQLITE_ROW)
        {
            coln = sqlite3_data_count(pStmt);
            for(j=0; j<coln; j++)
            {
            // получение данных как текстовые строки
            // вне зависимости от объявленного типа
            // столбца
              AnsiString otwet;
               UnicodeString Zapros;
               otwet.printf("%s",sqlite3_column_text(pStmt, j));
               Zapros = UTF8ToUnicodeString(otwet);
               Zapros = "insert into [" + NameTanlBase +"].[" + NameTabl +"] values('" + Zapros + "');";
               baseSQL->Add(Zapros);//Это список.
            }
            //printf("\n");// для разделения строк.
        }
        baseSQL->Add("");
        // получение сообщени¤ при ошибке
        // шаг 4 завершение выполнени¤ запроса
        sqlite3_finalize(pStmt);
 
 
    // закрытие БД’
    sqlite3_close(db);
как можно это исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.08.2015, 17:24     Правильно прочитать данные из базы данных
Посмотрите здесь:

Как правильно прочитать данные? - C++
Как правильно прочитать данные? &quot;ER-200&quot; 06:43 10:40 &quot;Red Arrow&quot; 23:55 07:55 &quot;Express&quot; 23:59 08:00 &quot;Slow Train 1&quot; 10:00 09:59 ...

Как правильно прочитать объявление? - C++
Как правильно прочитать данную конструкцию ((unsigned char*)(&amp;a)) ? Вот код.Помогите пожалуйста. #include &quot;stdafx.h&quot; #include...

Прочитать данные из файла - C++
Доброго времени суток! Помогите написать программку для чтения данных из файла, а то никак не получается. Есть файл, в первой строке...

Не могу прочитать данные - C++
Здравствуйте. Не могу прочитать данные после второго ввода (после enter a phrase). Объясните пожалуйста что не так, а то недавно начал...

Как правильно прочитать текстовый файл с помощью ReadFile? - C++
Как правильно прочитать текстовый файл с помощью ReadFile и сделать каждую новую строчку переменной?(нужно 4 строчки) Добавлено...

Подскажите пожалуйста как правильно это объяснить, прочитать - C++
#include&lt;stdio.h&gt; int main() { double y,x; printf(&quot;Vvedite zna4enie y=&quot;); scanf(&quot;%lf&quot;,&amp;y); if(y&gt;2) ...

Как прочитать данные pdf - C++
Как прочитать данные из файла pdf в программу какие есть для этого инструменты С++?? Можете фрагмент кода привести??

Прочитать данные из файла и построить график - C++
Программа, у которой не ясно, откуда ноги растут У меня есть программа, которая выдаёт данные в формате DAT. Там есть названия колонок...

Как на с++ прочитать данные из СОМ порта? - C++
Мне нужно под MS-DOS 6.22 прочитать несколько слов через СОМ порт (в пределах 2х десятков и потом эти слова проанализировать). Какое...

Не могу прочитать данные ячейки памяти - C++
Подскажите пожалуйста что не так. Адресс ячейки вычислил через артмани. Код процесса выводит верно, а значение памяти нет. Для примера взял...

Прочитать из текстового файла данные в массив структур - C++
Структура типа: Фамилия,логин,пароль,роль(администратор, модератор, простой пользователь) Не могу понять как прочитать из текстового...

Прочитать данные из файла в матрицу с указанной позиции - C++
&quot;дата 16.09.03 время 0:03:28 число точек 6144 частота 0616000 станция радиостация дискретность 50 Ф.И.О. оператора калибровка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru