Рейтинг:
7
OriginalGriff
Не.
"Правильный" способ сделать это-сохранить пользовательские данные в вашей административной таблице, как и в случае с присвоенным кодом Rfid-метки. Затем, когда вы получаете свайп тега, вы сохраняете код тега в Datatab (и, вероятно, метку времени), но никакой другой информации.
Когда вы хотите получить пользовательские данные и метку времени, вы используете соединение для корреляции rfid-метки из Таблицы данных с именем пользователя из таблицы администратора.
Если вы не делаете этого таким образом, вы дублируете информацию, тратите пространство БД и потенциально создаете себе проблемы позже. Подумайте вот о чем: что делать, если пользователь меняет свое имя? В правильно спроектированной системе изменение должно быть записано в одном месте. В вашем случае есть потенциально тысячи, которые нуждаются в обновлении.
Nazneen s
я делаю это так же, как вы объяснили @originalgriff, и метка времени и тег успешно извлекаются, но имя не отображается.Итак, что мне нужно, так это получить тег имени и метку времени для отображения в отчете, и для этого мне нужен запрос, который я пытался использовать join, но тогда все имена будут отображаться иначе, просто имя будет отображаться из моего вышеприведенного запроса. вот почему мне нужна помощь.
OriginalGriff
Покажите запрос соединения, который вы использовали.
Nazneen s
Выберите admin.фамилия от админа внутреннее соединение вкладку Данные на админа.имя = вкладку Данные.имя
Вставить в вкладку Данные(RFID-меток, "имя") выберите (RFID-меток,имя) от админа внутреннее соединение вкладку Данные на админа.имя=вкладку Данные.имя
И еще много чего подобного, но пока ничего не получалось.
OriginalGriff
Ты ведь не слушал ничего из того, что я говорил, не так ли?
Посмотрите на то, что я сказал, а затем посмотрите на свой вопрос. Что вы храните в таблицах? Почему?
Nazneen s
у меня есть две таблицы Admin и Datatab.in администратор я храню все данные о сотруднике, и rfid является первичным ключом там, во второй таблице Datatab я храню тайминги, имя и метку rfid-карты этого сотрудника, чтобы определить количество раз, когда сотрудник входил и выходил из компании.
OriginalGriff
Да. Я знаю.
Вы не хотите этого делать. Прочтите, что я сказал...
Nazneen s
мне очень жаль, но, может быть, я не понимаю, что вы можете уточнить, пожалуйста?
OriginalGriff
Какую часть вы не понимаете?
Скажите мне точно, какую часть вы понимаете и где вы путаетесь, и я посмотрю, смогу ли я объяснить.
Nazneen s
часть извлечения
"Когда вы хотите получить пользовательские данные и метку времени, вы используете соединение для корреляции rfid-метки из Таблицы данных с именем пользователя из таблицы администратора."
это именно то, что я не могу сделать и не понимаю, как это сделать.
OriginalGriff
Это ясно из приведенного выше кода: Вы не используете соединение для вставки, вы используете соединение для получения информации при выборе-вы храните имя пользователя только в одном месте: в таблице администратора. Затем вы используете уникальную ссылку из таблицы datatab, чтобы "совпасть" с записью администратора, и используете соединение, связывающее их через уникальную ссылку.
Выберите D.* а.имя с вкладку Данные д
Присоединяйтесь к администратору на.RFID-меток = д.RFID-меток
Где d. RFID = theValueFromTheRFIDTag
Вы просто вставьте RFID и меток времени в вкладку Данные:
Вставить в вкладку Данные (RFID-меток, метка времени) значений (theValueFromTheRFIDTag, функции getdate())
Nazneen s
спасибо, что терпишь меня.это была моя главная проблема, и теперь я понял :" вы не используете соединение для вставки"
OriginalGriff
:большой палец вверх: