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

Не могу удалить таблицы в БД SQLite - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удаление переменных из памаяти http://www.cyberforum.ru/cpp-beginners/thread946804.html
Как удалить переменную (в классе) созданную не через new или она автамfтически удалиться при вызове delete для объекта?
C++ Вложенный класс class zer { class ins { static const string st; public: static void showIns(){ cout<<endl<<st; } }; static const string st; public: http://www.cyberforum.ru/cpp-beginners/thread946794.html
C++ GCC, ввод строки в switch
Подскажите, почему не работает? (Что именно не работает написано в комментариях кода.) Программа элементарная, специально сделал для примера. Все ведь верно, но не работает как задумано. При первой попытке ввода строки через switch, ввод строки завершается автоматический, не введя даже ни одного символа. Компилятор GCC. Пытаюсь запустить на OC Android. Что через C4droid, что через CCTools,...
C++ Из заданного множества точек на плоскости выбрать такие три точки А, В, С
Из заданного множества точек на плоскости выбрать такие три точки А, В, С, чтобы внутри треугольника АВС содержалось максимальное количество точек этого множества.
C++ Бинарные файлы. Чтение http://www.cyberforum.ru/cpp-beginners/thread946625.html
Дан бинарный файл, компонентами которого являются массивы действительных чисел. Вычислить для каждого массива число отрицательных элементов. Записать в другой файл каждое из этих чисел. Как прочитать числа из бинарного файла? Раньше не сталкивался с бинарными файлами
C++ windows 7 + win32. Как правильно сохранить проект? Как правильно сохранить проект? консольный, win32. Чтобы запускался на семерке. Не в компиляторе, а просто как приложение. Ругается на MSVCP100D.dll подробнее

Показать сообщение отдельно
ElwooD07
0 / 1 / 1
Регистрация: 01.02.2012
Сообщений: 16
01.09.2013, 17:27  [ТС]     Не могу удалить таблицы в БД SQLite
Цитата Сообщение от castaway Посмотреть сообщение
Проблема в том, что ты не предоставляешь достаточной информации для решения данной проблемы.
Таблица создается запросом:
SQL
1
"CREATE TABLE Sets(id INTEGER PRIMARY KEY NOT NULL, bin_path TEXT, password_hash TEXT, path_sep INTEGER);"
Код, который не работает:
(Здесь m_db - указатель на базу, созданный заранее, т.е. база уже в коннекте с программой):
C++
1
2
3
4
5
6
7
8
sqlite3_stmt * m_stmt = 0;
 
sqlite3_prepare16_v2(m_db, L"DELETE FROM ?; DROP TABLE IF EXISTS ?;",
    -1, &m_stmt, 0);
sqlite3_bind_text16(m_stmt, 1, L"Sets", -1, 0);
sqlite3_bind_text16(m_stmt, 2, L"Sets", -1, 0);
sqlite3_step(m_stmt);
sqlite3_step(m_stmt);
Код, который работает (частично):
C++
1
2
3
4
5
6
sqlite3_stmt * m_stmt = 0;
 
sqlite3_prepare16_v2(m_db, L"DELETE FROM Sets; DROP TABLE IF EXISTS Sets;",
    -1, &m_stmt, 0);
sqlite3_step(m_stmt);
sqlite3_step(m_stmt);
Второй кусок (который работает), возвращает SQLITE_OK после второго sqlite3_step(), но таблица при этом не удаляется . Работает хотя бы
SQL
1
DELETE FROM Sets
, спасибо sqlite хоть на этом...

В коде, который работает, в комманде sqlite3_bind_text16() 4-й параметр - длина строки в байтах. Можно установить 8, но ничего не изменится.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru