У меня есть таблица базы данных со многими столбцами и нет указанного первичного ключа. Также нет списка супер ключей. Помимо итеративной попытки всех потенциальных клавиш/столбцов, есть ли способ для меня, используя SQL, попытаться определить, может ли подмножество ключей создавать уникальный идентификатор для моей таблицы?пытаясь определить уникальный идентификатор таблицы базы данных
Например, таблица может иметь 4 столбцов первой имя, фамилию, адрес и почтовый и данных я вижу:
John, Smith, 1 main st, 00001
Mary, Smith, 1 main st, 00001
Mary, Smith, 2 sub st, 00002
В этом случае я должен буду первый, последний и почтовый индекс, как мой уникальный ключ.
John, Smith, 1 main st, 00001
John, Smith, 1 main st, 00001
В этом случае нет уникального ключа.
Пожалуйста, не комментируйте мою конструкцию таблицы и/или нормализацию баз данных, я просто пытаюсь найти практический ответ. Благодарю.
Это мой вопрос: помимо итеративной попытки всех ключей/столбцов кандидата, есть ли способ для меня, используя SQL, попробовать и понять, может ли подмножество ключей создавать уникальный идентификатор для моей таблицы?
Спасибо. Я на самом деле пытаюсь сравнить две базы данных, но не могу найти ключ для их сравнения. – 2010-12-02 21:28:57
Хотя я верю в искусственные ключи, если у вас есть естественный ключ, который должен быть привязан к базе данных с уникальным ограничением. Просто создание искусственного ключа, чтобы избежать анализа данных, является плохой практикой. – HLGEM 2010-12-02 22:11:12