|
|
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
Приветствую, такой момент, если приложению понадобилась новый файл БД(например, при запуске проверяется наличие файлика базы данныйх и если его нет - создаём чистую базу), как лучше хранить информацию о ней для создания, тупо sql-портянкой в коде(CREATE TABLE...), оформленной простой строкой или ещё как-то можно? Какие есть варианты, чтоб по фен-шую? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2016, 22:07 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
что понимается под "файлом БД"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2016, 22:10 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
Изопропил, Имел ввиду что нужно создать новую БД, в частности файлик БД для SQLITE. Т.е например в приложение при запуске не нашло свою базу, требуется создать новую, как хранить информацию о структуре БД, проще говоря, как хранитть все эти "CREATE TABLE" ? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2016, 22:27 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
Полный скрипт создания структуры БД со всеми таблицми-индексами-триггерами-прочим, включая наолнение словарей - вовнешнем текстовом файле (защита минимумконтрольной суммой) или в ресурсах. Это, кроме прочего, позволит подкачивать обновлённую версию с Инета, а также включать в файл и команды корректноготпереносаданных изБД устаревшей версии (что гораздо надёжнее корректировки структуры, пусть и затратнее). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2016, 22:28 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
Akina, Т.е отдельным файлом - в случае необходимости зачитали его и создали по нему БД, понял, спасибо :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2016, 22:36 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
I dont knowПриветствую, такой момент, если приложению понадобилась новый файл БД(например, при запуске проверяется наличие файлика базы данныйх и если его нет - создаём чистую базу), как лучше хранить информацию о ней для создания, тупо sql-портянкой в коде(CREATE TABLE...), оформленной простой строкой или ещё как-то можно? Какие есть варианты, чтоб по фен-шую?Можно : - скриптом для создания БД (внешний файл) - просто файл пустой БД, нулевой, который копируется в рабочий. Однако, возникает вопрос: а что делать, если приложение не нейдет и скрипт / файл ? То есть, если приложение почему-то не находит файл БД, с тем же успехом оно может не найти все что угодно. Поэтому, я бы просто вывел предупреждение "файл БД не найден, позовите администратора". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2016, 22:39 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
S.G.Однако, возникает вопрос: а что делать, если приложение не нейдет и скрипт / файл ? приложение - в Program Files, база - в профиле и накойхер здесь админ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2016, 22:47 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
Изопропили накойхер здесь админ?Администратор, Создатель Программы, Бог, Волшебник. Любой, кто может разобраться, почему вдруг файл БД не виден. Хотя, ты прав, можно и покороче: "Не найден файл БД. Сегодня отдыхаю". Без советов, что делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2016, 00:19 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
I dont knowОднако, возникает вопрос: а что делать, если приложение не нейдет и скрипт / файл ? Очевидно же. Значит хранение скрипта в файле не подходит. Придется хранить его зашитым в коде, для надежности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2016, 01:11 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
Создание новой БД можно зашить в код. Обновления структуры делать так: делаешь отдельный метод UpdateStruct() и в нем примерно следующее Код: sql 1. 2. Тут главное всегда дописывать в конец. Тогда обновление с любой версии до текущей произойдет без проблем. Вызывать можно при каждом запуске или как-то отслеживать обновление, например хранить версию exe в БД, при старте проверять, если не совпало - запускать UpdateStruct() затем сохранять текущую версию exe в БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2016, 08:07 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
YuRockI dont knowОднако, возникает вопрос: а что делать, если приложение не нейдет и скрипт / файл ? Очевидно же. Значит хранение скрипта в файле не подходит. Придется хранить его зашитым в коде, для надежности.Топикстартер немного не договорил про началные условия, ненахождения файла БД. Допустим, вчера файл находился, сегодня не хочет (причин может быть много). И что, надо автоматом генерировать новый пустой файл, не предупреждая о том, что все данные куда-то пропали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2016, 09:32 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
Меня интересовал общий подход к этому вопросу, потому как хранить портянку sql запроса в самом коде посчитал нецелесообразным, да и как уже сказали, в случае изменения структуры базы не надо ничего переписывать в коде создания БД. Ну а в случае отсутствия такого скрипта, думаю можно просто выдать предупреждение и закрыться, либо автоматически подтянуть файлик с какого-нибудь сервера, это уже не принципиально). Главное хотелось понять, хранить сам запрос в коде это фен-шуйно или нет, понял, что не очень. Благодарю за советы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2016, 10:32 |
|
||
|
Алгоритм создания нового файла БД?
|
|||
|---|---|---|---|
|
#18+
S.G.Изопропили накойхер здесь админ?Администратор, Создатель Программы, Бог, Волшебник. Любой, кто может разобраться, почему вдруг файл БД не виден. Хотя, ты прав, можно и покороче: "Не найден файл БД. Сегодня отдыхаю". Без советов, что делать. YuRockОчевидно же. Значит хранение скрипта в файле не подходит. Придется хранить его зашитым в коде, для надежности. Люди, вы различаете место хранения программы и её данных(в профиле пользователя)??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2016, 10:43 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=27&tid=1340646]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 250ms |
| total: | 408ms |

| 0 / 0 |
