Динамическая обработка столбцов SQL в таблице при загрузке данных - PullRequest
1 голос
/ 13 марта 2019

Мне нужно спроектировать таблицу в Oracle / SQL, и данные будут загружаться через приложение Java / C # через CSV с 50 полями (сопоставленными со столбцами таблицы). Как спроектировать Таблицу / БД с приведенными ниже ограничениями при импорте данных из CSV

  • В CSV могут быть добавлены новые поля к существующим 50 полям.

В этом случае вместо добавления столбца в таблицу вручную и загрузки данных. Как мы можем разработать таблицу для плавной / автоматической обработки файлов с динамическими полями

EX:

CSV содержит S_ID, S_NAME, SUBJECT, MARK_VALUE полей в нем

+------+---------+-------------+------------+
| S_ID | S_NAME  | SUBJECT     | MARK_VALUE |
+------+---------+-------------+------------+
|    1 | Stud    | SUB_1       |         50 |
|    2 | Stud    | SUB_2       |         60 |
|    3 | Stud    | SUB_3       |         70 |
+------+---------+-------------+------------+

Что если в CSV добавлено новое поле "RANK" (аналогичные дополнительные поля), и мне нужно сохранить все новые поля в таблице.

Пожалуйста, предложите дизайн БД для этого рассмотрения

1 Ответ

0 голосов
/ 13 марта 2019

Таким образом, на мой взгляд, существует несколько подходов, один из которых - иметь метаданные (запись) в одной таблице (имя столбца, тип данных, любое ограничение) и иметь другую таблицу произвольной формы с достаточно большим значением no.столбцов, которые будут содержать данные.Используйте таблицу метаданных при вставке данных в эту таблицу для обеспечения целостности данных и других вещей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...