Найти - Пользователи
Полная версия: sqllite, замена
Начало » Базы данных » sqllite, замена
1
n2b
Использую БД для хранения данных. Данных не очень много, но со временем база будет расти. Тысячных таблиц не будет. Десяток таблиц и сотни строк данных, возможно.
SQLITE всем устраивала, пока не наткнулся на необходимость удалить колонку. А такой возможности у неё нет. Есть костыль, следующего вида:

BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;
Но он под мои задачи не подходит, так как мне необходимо дропнуть 1 колонку, а остальное сохранить, как это сделать исходя из этого костыля не понятно.
Костыль взят отсюда: http://grass.osgeo.org/wiki/Sqlite_Drop_Column

Отсюда появилась необходимость заменить sqlite на другую БД.
Требований к БД никаких, кроме простого взаимодействия и легковесности.

Необходимые функции от бд:
Добавление таблиц.
Добавление колонок с данными.
Удаление определенной колонки.
Добавление данных в колонку.
Удаление данных из колонки.

Если еще и язык будет SQL (ALTER, INSERT, DROP and etc.) будет вообще замечательно, не придется переписывать все функции.

Посоветуйте пожалуйста.

python 2.7
agalen
Если посмотреть, то данный пример удаляет все столбцы из таблицы t1, кроме a и b.
Может проще разобраться с этим, чем сразу бежать на другую базу.
n2b
agalen
Если посмотреть, то данный пример удаляет все столбцы из таблицы t1, кроме a и b.
А мне-то надо удалить один, а оставить все остальные - а какие это, заранее не известно. Придется брать данные из таблицы, обрабатывать их, убирать из них нужную колонку и уже после этого подставлять в данный костыль. Смысла убиваться ради удаления одной записи не вижу.
Щас рассматриваю вариант с переработкой формы хранения данных, если же опять все будет “тяжело”, то все равно хочу перейти на другую базу, где элементарная функция реализована.
agalen
Данный костыль как раз не требует работы с данными - только со структурой таблицы.
Если изменение структуры таблиц - частая операция, то может стоит посмотреть в сторону NoSQL.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB