Форум программистов, компьютерный форум, киберфорум
SQLite
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
22 / 21 / 8
Регистрация: 17.02.2011
Сообщений: 384
1

SQLLite ошибка в дополнительном поле

11.07.2022, 14:40. Показов 797. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
По наследству достался файл SQLLite с таблицами в которых три поля. Решил удалить таблицу и добавить другую с еще одним полем, пишу, читаю, но последнее поле пишет ошибку, данные в ней неизвестны. Я так понимаю, проблема в том, что файл SQLLite имеет определенную структуру данных. А как ее можно поменять? Имея под ругой QT creator.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.07.2022, 14:40
Ответы с готовыми решениями:

Как исправить в дополнительном поле вывод картинки
при добавлении новостей, я картинку вставляю в дополнительное поле. картинка выводиться как надо,...

Текстовое уведомление при достижении даты, указанной в дополнительном поле
В дополнительном поле вывожу дату в таком виде 24.06.19 (если потребуется, то формат можно...

Как отобразить в каждой строке в дополнительном поле DBGridEh1 количество записей из DBGridEh2
здравствуйте. BDE Paradox две таблицы связаны Master/Detail с помощью Query. Данные таблицы...

Ошибка запроса к таблице SQLLITE
Не выполняется exec: "no such table: activity Unable to execute statement В базе таблица есть....

SqlLite, ошибка: No connection associated with this command
Здравствуйте, есть код. class Base { SQLiteConnection connection = null; ...

4
Модератор
9260 / 6038 / 2379
Регистрация: 21.01.2014
Сообщений: 25,802
Записей в блоге: 3
11.07.2022, 15:54 2
А конкретика будет?
1
22 / 21 / 8
Регистрация: 17.02.2011
Сообщений: 384
11.07.2022, 17:45  [ТС] 3
К сожалению не особо. Файла этого под рукой нет. НО вот так например я пытался создать таблицу в это БД
C++ (Qt)
1
2
3
4
5
6
query.prepare(QString
("CREATE TABLE %1("
"id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,"
"first1 varchar(2) NOT NULL,"
"first2 varchar(3) NOT NULL,"
"first3 varchar(4) NOT NULL)").arg("BUGAGA"));
first 2 это мое дополнительное поле. first 3 читается теперь с ошибкой.
так записываю
C++ (Qt)
1
2
3
4
5
6
7
what.prepare(QString
("INSERT INTO %1 
(first1 , first2 ) 
VALUES (:first1 , :first2 )").arg("BUGAGA"));
what.bindValue(":first1",mas[0]);
what.bindValue(":first2",mas[1]);
what.bindValue(":first3",mas[2]);
Я нашел ошибку. Я забыл добавить поля в саму строку.
C++ (Qt)
1
2
3
"INSERT INTO %1 
(first1 , first2 ) 
VALUES (:first1 , :first2 )")
0
1928 / 1163 / 423
Регистрация: 31.05.2012
Сообщений: 4,110
11.07.2022, 17:59 4
Лучший ответ Сообщение было отмечено leonidSDF как решение

Решение

Цитата Сообщение от leonidSDF Посмотреть сообщение
Я нашел ошибку
first3 NOT NULL, а ты ни чего не пишешь в это поле, будет ошибка
0
22 / 21 / 8
Регистрация: 17.02.2011
Сообщений: 384
12.07.2022, 12:51  [ТС] 5
Не помогло, эта штука выдаёт false
C++ (Qt)
1
2
3
4
5
6
7
8
9
query.prepare(QString
("CREATE TABLE %1("
"id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,"
"number INTEGER NOT NULL," 
"first1 varchar(2) NOT NULL,"
"first2 varchar(3) NOT NULL,"
"first3 varchar(4) NOT NULL)").arg("bugaga"));
If(query.exec) return true;
else return false
При этом очистка возвращает true
C++ (Qt)
1
2
3
4
QSqlQuery query;
query.prepare(QString(DELETE FROM %1).arg("bugaga");
If(query.exec) return true;
else return false;
Проблема в том что там уже лежит таблица со старыми полями Bugaga, как я понял. И если создать таблицу с другим именем, то он начинает её создавать. А как удалить предыдущую?

Добавлено через 3 часа 39 минут
Использовал команду DROP TABLE IF EXISTS, пройдя по листу таблиц в бд, удалились все , кроме двух, bugaga в том числе , в чем может быть проблема?

Добавлено через 12 минут
Все получилось
0
12.07.2022, 12:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.07.2022, 12:51
Помогаю со студенческими работами здесь

В дополнительном поле, не отображается тип ввода "migx"
Всем привет! Возникла проблема. Установил на modx revo приложение MIGX, но при создании...

Атрибут rel="nofollow" в дополнительном поле CCK
Использовал модуль link. Он как раз подходит, но при переписке атрибута в поле rel на nofollow при...

C#+SqlLite
Требуется написать программу на C# с применением базы данных, желательно СклЛайт, но можно и с...

SqlLite
Здравствуйте! Подскажите, пожалуйста, при подключении sqLite 1.0.115.5 через Nuget должен при...

Sqllite
Подскажите,не происходит удаление в qdatatable qt3 пишет qdatatable: deletecurrent no primary...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru