Правильно ли перед каждым запросом к БД открывать БД, а после выполнения запроса и получения результата - закрывать БД?
Подозреваю, что у меня не совсем правильно всё сделано. БД я открываю при запуске проги, и в дальнейшем команду на её закрытие не даю.
Этот топик читают: Гость
Ответов: 952
Рейтинг: 4
|
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
user_asm писал(а): Подозреваю, что у меня не совсем правильно всё сделано. |
|||
карма: 25 |
|
Ответов: 952
Рейтинг: 4
|
|||
Пока не знаю. Мелькало несколько раз в этой теме про закрытие. Но там не было приложенных схем, поэтому не разобрался, что имелось в виду, и как это лучше реализовать если действительно надо.
Моя программа может быть запущена у порядка 10-15 человек одновременно. Вроде пока проблем не было. Кстати, после перевода в UTF8 размер файла БД увеличился примерно в 2 раза. Это нормально? |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
user_asm писал(а): Вроде пока проблем не было.user_asm писал(а): после перевода в UTF8 размер файла БД увеличился примерно в 2 раза. |
|||
карма: 25 |
|
Ответов: 197
Рейтинг: 2
|
|||
Вероятно это уже обжёвывали, но чет на форуме не нашел. в интерне полно ответов не то что нужно либо фраза оно не поддерживается.
Так вот проблема в следующем мне нужно удалить столбец находящийся в середине в таблице в базе sqlite. Мне нужно сделать это sql запросами. дело в том что sql менеджер это может делать НО КАК? хотя везде пишут что невозможно!!! |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
zhorik5,
Есть таблица tab с колонками A,B,C,D,E. Нужно удалить колонку С
--- Добавлено в 2018-12-01 09:59:18 zhorik5 писал(а): sql менеджер это может делать Редактировалось 1 раз(а), последний 2018-12-01 09:59:18 |
|||
карма: 25 |
|
Ответов: 952
Рейтинг: 4
|
|||
Исполнитель сменил фамилию, соответственно требуется во всей БД её поменять.
Как лучше сделать? UPDATE note SET fioisp=REPLACE(fioisp,'Иванов','Петров') или UPDATE note SET fioisp='Петров' WHERE fioisp='Иванов' |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
UPDATE note SET fioisp="Петров" WHERE fioisp="Иванов";
Если у тебя нет других Ивановых Редактировалось 3 раз(а), последний 2019-01-01 11:03:34 |
|||
карма: 25 |
|
Ответов: 704
Рейтинг: 7
|
|||
Если создать базу в памяти :memory:, то можно ли с ней работать напрямую из другой программы на том же компьютере? Как к ней добраться? Или только клиент-сервер прикручивать приложениям?
|
|||
карма: 0 |
|
Ответов: 952
Рейтинг: 4
|
|||
Есть таблица
CREATE TABLE tab ( id INTEGER, gruppa TEXT, fio1 TEXT, fio2 TEXT, fio3 TEXT ); Есть возможность объединить данные из ячеек fio1, fio2, fio3 и поместить в ячейку fio1 ? Или для этого надо будет перекроить всю БД ? |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
user_asm, пора научиться ставить задачу.
Редактировалось 2 раз(а), последний 2019-02-12 23:55:42 |
|||
карма: 25 |
|
Ответов: 952
Рейтинг: 4
|
|||
Имеем запись в таблице где:
fio1 Иванов Т.С. fio2 Соколов И.П. fio3 Лысаков П.С. а хочу получить fio1 Иванов Т.С., Соколов И.П., Лысаков П.С. fio2 Соколов И.П. fio3 Лысаков П.С. Структуру таблицы оставить при этом ту же. CREATE TABLE tab ( id INTEGER, gruppa TEXT, fio1 TEXT, fio2 TEXT, fio3 TEXT ); Не удалять столбцы. Нашел функции CONCAT и || но не уразумел возможно ли с помощью них это реализовать... Редактировалось 1 раз(а), последний 2019-02-13 10:48:13 |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Завтра Лысаков П.С. рассчитался и уехал на Сахалин...
Что будешь делать ? user_asm писал(а): CREATE TABLE tab ( id INTEGER, gruppa TEXT, fio1 TEXT, fio2 TEXT, fio3 TEXT ); Что Батько сказал: "Больше трёх не собираться" или в обед легче разливать на троих? Посмотри как компоненты объединены в группы в HiAsm. Редактировалось 1 раз(а), последний 2019-02-13 21:04:04 |
|||
карма: 25 |
|
Ответов: 952
Рейтинг: 4
|
|||
Да мне без разницы куда он уедет. Суть в том что сейчас фамилии раскиданы в 3 ячейки. В каждой ячейке по 1 фамилии.
Я хочу объединить имеющиеся уже в БД данные в одну ячейку и уже дальше вести БД таким образом, что бы в новых записях нужные фамилии кидать именно в эту 1 ячейку. Что бы там было хоть 3, хоть 5, хоть 15 фамилий, сколько мне нужно кароче. Это упростит поиск по БД. А ставшие ненужными столбцы я потом возможно удалю. Редактировалось 1 раз(а), последний 2019-02-13 21:25:25 |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
user_asm писал(а): Это упростит поиск по БД.SQLite LIKE не работает с русским алфавитом Это делается так:
-- Получить список работников группы : -- в столбик SELECT fio FROM people WHERE id_group=%1; -- в одну строку через запятую SELECT group_concat(fio) FROM people WHERE id_group=%1; -- в одну строку через # SELECT group_concat(fio, "#") FROM people WHERE id_group=%1; Редактировалось 4 раз(а), последний 2019-02-13 22:20:09 |
|||
карма: 25 |
|