【发布时间】:2013-10-16 13:40:56
【问题描述】:
我有一个关于交换我的数据库表中的几个值的问题。
我要建立的是一个显示调查的网站(在 ASP.net 中)。问题将存储在名为SURVEY_QUESTIONS 的表中(在 SQL Server 中)。
该表有以下列:
- survey_question_id (int)
- 问题(字符串)
- 类型(字符串)
- 活动(布尔)
- 订单(整数)
现在,问题列中将存储一个问题,例如:
您对目前的情况满意吗?
类型可以是多项选择,也可以是开放列。活跃意味着如果它是活跃的,那么只有问题才会显示在调查中。我遇到的问题是最后一列,order。我想将问题从最低到最高排序。因此,如果我有 5 个问题,它们将按照顺序列 1、2、3、4、5 很好地排序。
我有一个 C# (Winforms) 应用程序,我可以在其中添加问题并进行编辑。我在 datagridview 中执行此操作,并使用数据集填充网格视图。例如,当我按下保存按钮时,datagridview 中的更改将更新到我的数据库中。
现在假设问题一的订单号为 3,问题五的订单号为 1。我希望问题一是第一个显示的问题,这意味着它的订单号应该是 1。但在这种情况下,问题五已经有订单号,我想要的是每当“占用”的订单号分配给另一个问题时,它们的订单号交换。
我在保存按钮后面有以下代码来更新数据库:
DialogResult dr = MessageBox.Show("Are you sure want to edit a question?", "Message", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (dr == DialogResult.Yes)
{
this.SURVEY_QUESTIONTableAdapter.Update(_PVB1314_005DataSet.SURVEY_QUESTION);
datagridviewTest.Refresh();
MessageBox.Show("Database updated");
}
希望有人能帮我解决这个问题,在此先感谢。
【问题讨论】:
标签: c# sql-server database datagridview