Клиент дал мне электронную таблицу, и данные из электронной таблицы нужно ежемесячно считывать в базу данных MS SQL Server.Электронная таблица имеет следующие столбцы:
- Курс (строка)
- Месяц (строка)
- Уровень зарплаты (строка)
- Отдел (строка))
- Число участников (int)
- Количество отмен (int)
Мне нужно спроектировать базу данных и написать код для хранения данных электронной таблицы.Я могу написать код для чтения данных из электронной таблицы в базу данных достаточно легко, я собираюсь делать это в веб-приложении ASP.Net MVC на C # с LinqToExcel и Entity Framework для сохранения.После этого клиент сможет загрузить электронную таблицу в веб-приложение ASP.Net.
Однако у меня возникли проблемы с электронной таблицей.Основным из них является отсутствие уникального идентификатора столбца для каждой строки в электронной таблице.Я мог бы просто создать таблицу в своей базе данных, которая зеркально отображает столбцы электронной таблицы, но если клиент каким-то образом случайно загрузил в веб-приложение одни и те же данные электронной таблицы дважды, то я не смогу выполнить проверку в приложении, чтобы гарантировать наличие дубликатов.не созданы в таблице базы данных, т. е. потому что у меня нет уникального поля столбца для каждой строки.
Я не использовал составные первичные ключи ранее, однако я подумал, возможно лисоздать составной ключ из столбцов:
- Курс (строка)
- Месяц (строка)
- Зарплата (строка)
- Отдел (строка)
Объединение значений из каждого из этих столбцов даст уникальный идентификатор для каждой строки.Тем не менее, я, честно говоря, понятия не имею, что это плохая идея, плохой дизайн стола и т. Д., Поскольку я никогда раньше не сталкивался с этим сценарием.Мне также интересно, не будет ли это проблемой для Entity Framework при вставке данных в таблицу базы данных.
Буду очень признателен за любые рекомендации или предложения по решению этой проблемы?
Спасибо.