My code is lay - it's developers day
A twenty days ago: "My timesheet needs to be changed"
Today: "Ow shit, it's time to make smth"
За время моего отсутствия научился более-менее по-человечески работать с MS SQL Server.
Конечно создать БД не так просто, особенно если она состоит из целой кучи различных таблиц, запросов и процедур, но это пока что не наш случай. Здесь будет всего лишь несколько простых связанных таблиц и создание простенького клиента на WinForms для работы с этими таблицами.
Для разработки использовались:
- MS SQL Server 2019
- MS SQL Managment Studio для удобства взаимодействия с сервером БД
- MS Vsiual Studio 2017 + компоненты для работы с SQL сервером
Шаг 1: Создание базы данных
В качестве примера создадим таблицы с информацией по юридическим лицам и выданным им лицензиям. Нам понадобятся следующие таблицы для отражения полной картины данных:
- Таблица с информацией по юр. лицам (ID, ОГРН, ИНН, КПП)
- Таблица с информацией по лицензиям (ID, номер лицензии, лицензирующий орган, дата решения о выдаче, дата начала/окончания действия лицензии, ЮЛ которому эта лицензия выдана)
- Таблица с перечнем лицензирующих органов (ID и наименование)
- Таблица с видом лицензии (ID и наименование вида деятельности)
После создания таблиц необходимо создать связи по ключам ID между таблицами с лицензиями и ЮЛ, лицензирующими органами, видами лицензий.
Шаг 2: Создание приложения
Использовался стандартный проект WinForms, т.к. в нем проще всего создать связку с данными БД через элемент DataGrid View. Дополнительно были добавлены элементы BundingBavigator, но их использовать не обязательно (хотя так удобнее взаимодействовать с таблицами на форме).
Собственно на форме потребовалось разместить два элемента DataGrid и пару навигаторов, один из которых был с дополнительной кнопкой для сохранения изменений. Для первых была сделана связка с БД через меню добавления источника данных.
Ниже готовый вариант приложения.
На разработку суммарно потратил около 40 минут, большая часть из которого заняло время на создание и заполнение базы. Поскольку проект был чисто для обучения самого себя добавлять ссылку на исходники считаю излишним.
Post Scriptum
Переусердствовал на работе и заболел, поэтому так долго от меня не было ничего бесполезного.
На выходных попробую сделать простенький UI на Xaml WPF и расскажу что из этого выйдет.