2012-03-11 4 views
-1

Я работаю над проектом, и мне действительно нужна помощь. Я использую asp.net.Как заказать таблицы, историю того, что было изменено и что будет изменено?

Требования: Gridview, база данных sql 2008, источник данных sql.

Table name : ancientsItems 
Columns: 

ID|NAME |Age |Code |Repair |Date| 
1 Vase 20 B829 Yes/No x/xx/xxx 

I would like to do the following: 

If I select in the repair column value : YES , then two columns will be aded with time/final time: 

ID|NAME |Age |Code |Repair | Time | Final Time |Date| 
1 Vase 20 B829 Yes  xx  xx  x/xx/xxx 
  1. Если я выбираю Да в колонке ремонта и выбрать время, когда я
    начал ремонт, я хотел бы сделать отдельную таблицу с Под ремонта и там все строки со сроком ремонта YES будет добавлено.
    И когда я добавлю последний раз в эту строку из первой таблицы, в отдельной таблице Отремонтировано, будет добавлена ​​строка со всеми значениями
    , имя, возраст, идентификатор, ремонт, время, окончательный, Дата.

В настоящее время я сделал 3 стола: ancientsItems, под ремонт, отремонтирован, но я не знаю, как я могу сделать все остальное. Пожалуйста, если вы не возражаете, помогая мне, я действительно ценю.

спасибо. Irina

+0

Ofc Я знаю, но не знаю, как я могу это сделать. –

ответ

0

Есть несколько вещей, которые здесь неясны. Пожалуйста, отредактируйте свой вопрос, чтобы включить более подробную информацию, и мы, возможно, вам поможем.

Некоторые вопросы, которые у меня есть: с чем именно вы столкнулись? Манипулирование страницы, чтобы можно было изменить данные или структуру базы данных?

Что происходит, если предмет отремонтирован дважды или более?

Что происходит с «Возраст» предмета, когда текущая дата изменяется на год? что (если что-нибудь) обновляет его?

Из моего понимания ситуации, я бы создать таблицы базы данных, как это:

AncientItems: 
Id, Code, Name, ItemCreationDate (ItemCreationdate being Now-Item Age). 

AncientItemRepairs: 
Id, AncientItemId, RepairDate, Any other repair-specific info. 

Это означает, что вы не храните информацию по ремонту рядом пункта на всех - вместо этого, один элемент могут быть связаны со многими документами ремонта через AncientItemId.

Кроме того, поскольку мы теперь сохраняем ItemCreationDate вместо возраста, его не нужно обновлять ежегодно.

О том, как обновить Gridview в вашем ASP.Net проекте, нам нужно больше информации:

  • Как вы доступ к базе данных (Entity Framework/ADO /?)?
  • Есть ли у вас существующий уровень доступа к данным?
  • Какой код вы пробовали? Почему это не сработало?
+0

1.after оба столбца - время ремонта (время его начала) и время завершения (когда я закончил ремонт), эта строка будет добавлена ​​в таблицу. Репарации завершены. и столбец «Ремонт» получит значение «НЕТ». и так далее. 2. Я использую источник sqldata в gridview для получения значений в нем. Я думал о том, чтобы что-то сделать, но я не знаю, как это сделать, и ...если мне нужно написать это, скажите мне, это просто то, что я подумал, а не код, но идеи –

+0

1. Когда значение столбца (ремонта) установлено равным: YES, тогда появятся другие 2 столбца, первый из которых называется: Reparation начался, а другой, Репарация закончилась:! , Когда я напишу значение в начатых репарациях, тогда вся строка будет добавлена ​​в другую таблицу под названием «Под ремонтом»! , и когда я добавлю значение даты финализации, строка из восстановленного объекта будет удалена, а строка со всей информацией войдет в другую таблицу, называемую: завершение репарации! –

+0

Структура данных, которую вы используете, не имеет смысла - либо я неправильно понял, либо вам нужно ее переосмыслить. Ваши данные должны быть [нормализованы] (http://en.wikipedia.org/wiki/Database_normalization) (короче говоря, каждый факт должен появляться только один раз и должен быть авторитетным.) Что произойдет, если столбец «Да/Нет» не синхронизируется ? Измените свой вопрос, чтобы добавить дополнительную информацию - читать гораздо легче, чем комментарии. – Basic

Смежные вопросы