У меня есть база данных SQL с основной таблицей под названием «Результаты». В этой таблице хранится запись результатов тестов, которые выполняются в ночное время.Как связать таблицу Junction с моей основной таблицей
Таблица результатов имеет много полей, но аргументы говорят, что позволяет просто сказать, сейчас это выглядит следующим образом:
- ResultID (уникальный ключ поле, генерируемое при вставке)
- Результат (nvchar10)
То, что я хотел записать, - это список тегов, используемых в тестах, которые были запущены. Теги могут отличаться для каждого результата, и массив из них сохраняется.
Я создал таблицу перехода, как показано ниже называемых Метки:
- TagID (целое поле ключа уникальное сгенерированных во время выполнения)
- ResultID (INT)
- ScenarioTag (nvchar128)
- FeatureTag (nvchar128)
Так что им нужно сделать, чтобы связать эти 2 вместе. Я не так хорош в базах данных, если честно.
Я думал, что, когда я сохраняю результаты теста с моим обычным SQL-запросом сразу после того, как я прокручу каждый тег и сохраню теги в этой новой таблице, но, возможно, я здесь не так?
Psuedocode:
//Returned from previous SQL statement that inserted results values into the DB
int ResultID = SQLQueryReturnValue;
Foreach TAG in TAGS
{
string SQLQuery = "INSERT INTO TAGS (ResultID, ScenarioTag, FeatureTag)(@ResultID, @ScenarioTag, @FeatureTag)";
CmdSql.Parameters.AddWithValue("@ResultID", ResultID);
CmdSql.Parameters.AddWithValue("@ScenarioTag", TAG.Scenario);
CmdSql.Parameters.AddWithValue("@FeatureTag", TAG.Feature);
CmdSql.CommandText = SQLQuery;
CmdSql.Execute();
}
Вот пример того, что каждая таблица может выглядеть на самом деле:
Results Table
|ResultID | Result |
| 10032 | Pass |
| 10031 | Fail |
| 10030 | Fail |
Tags Table
| TagID | ResultID | ScenarioTag | FeatureTag |
| 6 | 10032 | Cheque | Trading |
| 5 | 10032 | GBP | Sales |
| 4 | 10031 | Direct Credit | Trading |
| 3 | 10031 | GBP | Purchase |
| 2 | 10030 | Wire | Dividends |
| 1 | 10030 | USD | Payments |
Итак, наконец, на мой вопрос ... Есть ли способ, что я физически могу связать это новую таблицу «Теги» в таблицу результатов. Он неформально связан с использованием ResultID, но нет физической ссылки.
А я вижу, что это имеет смысл. Извините за мою плохую формулировку, но да, это то, что я искал, используя ограничение.Очень маловероятно, что мы когда-либо удалим результаты, которые они должны быть сохранены для целей аудита. – Festivejelly