Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
2 / 2 / 0
Регистрация: 12.12.2014
Сообщений: 87
1

Вынести текст запросов SQL из кода C# в отдельный файл с сохранением имен таблиц, определённых в коде

16.11.2018, 11:50. Просмотров 862. Ответов 2
Метки нет (Все метки)

Делаю парсинг файлов и вставляю результаты в БД SQLite.
Сейчас текст запросов SQL по созданию таблиц и индексов я определяю в переменной string в коде на C#, примерно так:

C#
1
2
3
4
5
6
7
8
9
10
11
cmd.CommandText = "CREATE TABLE IF NOT EXISTS " +
                                $"[{tableName_GroupNames}] " +
                                $"(" +
                                $"[SimID]   INTEGER NOT NULL," +
                                $"[GroupID] INTEGER NOT NULL," +
                                $"[Name]    TEXT    NULL," +
                                $"PRIMARY KEY (SimID, GroupID)," +
                                $"FOREIGN KEY (SimID) REFERENCES {tableName_Sim}(ID)" +
                                $");";
 
cmd.ExecuteNonQuery();
Таблиц много, разбираться в их определении в таком виде тяжело. Хотелось бы вынести текст SQL запросов в отдельный текстовый файл, желательно ещё с возможностью добавлять комментарии.
При этом имена таблиц хотел бы определить где-то отдельно. Лучше всего в коде C# в переменных. Читать и править определения таблиц в таком виде очень не удобно.
Возможно ли это сделать?
Есть простая идея создать текстовый файл с текстом всех запросов, который во время выполнения каждый раз бы считывался. Но хотел бы, чтобы текст запросов встроился в программу при компиляции, и не было бы проблем, что кто-то этот текстовый файл у себя поменяет. Кроме того, если надо будет изменить названия таблиц, желательно менять их в одном месте, пока это место - соответствующие static string переменные в коде C#.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.11.2018, 11:50
Ответы с готовыми решениями:

Вынести часть кода в отдельный файл
Ситуация следующая: Есть три php файла. index.php (страница с формой), verification.php...

Вынести часть кода в отдельный файл
Есть не большой сайтик. Cобран из html страниц и один банер в верху. Если изменять банер - нужно...

Вынести блок кода в отдельный файл
Представим такую ситуацию: у вас есть блок-меню сайта, который повторяется на всех страницах,...

Вынести коды форм из исходного кода в отдельный файл (ajax)
на сайте имеется две формы, коды которых присутствуют непосредственно в теле страницы, на что,...

2
Супер-модератор
Эксперт .NET
11870 / 9914 / 4147
Регистрация: 17.03.2014
Сообщений: 19,874
Записей в блоге: 1
Завершенные тесты: 2
16.11.2018, 12:30 2
Thor, вариант с $@-строками не подходит?
C#
1
2
3
4
5
6
7
8
9
10
11
cmd.CommandText = $@"CREATE TABLE IF NOT EXISTS
    [{tableName_GroupNames}]
    (
    [SimID]   INTEGER NOT NULL,
    [GroupID] INTEGER NOT NULL,
    [Name]    TEXT    NULL,
    PRIMARY KEY (SimID, GroupID),
    FOREIGN KEY (SimID) REFERENCES {tableName_Sim}(ID)
    );";
 
cmd.ExecuteNonQuery();
0
2 / 2 / 0
Регистрация: 12.12.2014
Сообщений: 87
16.11.2018, 13:56  [ТС] 3
OwenGlendower, да, так конечно более удобно будет, чем мой вариант.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2018, 13:56

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Основную часть кода вынести из класса формы в отдельный класс
У меня весь код находится в коде формы, а мне нужно основную часть написать в отдельно созданном...

Вынести в отдельный файл
Получается такая ситуация, что в начале сайта много скриптов отрабатывает, и не очень удобно...

Вынести расчёты в отдельный файл
Написал программу без функций и ветвлений - программа работает. Но преподавателю этого показалось...

Не получается вынести класс в отдельный файл
Добрый вечер. Не получается вынести код в отдельный файл. есть заголовочный файл, и есть файл с...

Вынести Java скрипты в отдельный файл
Подскажите как вынести Java скрипты в отдельный файл? Я так понимаю в папке js создать файл, в...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.