返回首页

我有这样的数据库

Category    code    serial_no   city

 

   Dealer      DLR/1       1       Agra

   Dealer      DLR/1       2       Agra

   Dealer      DLR/1       3       Chennai

   Dealer      DLR/1       4       Chennai

   Dealer      DLR/1       5       Delhi 

   Dealer      DLR/1       6       Delhi

现在,我要更新城市阿格拉
第二个记录
那么数据库应该像
{C}
当我更新我的城市我的序列号也应该发生相应的变化,应做每一件事与编码

应排序由城市,serial_no

请帮我......

从注释的代码:
string query_empty = String.Empty;

                    query_empty = "UPDATE customer SET category='" + NJS_Helper.FormatStringforDB(this.lblcategoryselected.Text) + "', code='" + NJS_Helper.FormatStringforDB(lblcategory_code.Text) + "', serial_no='" + String.Empty + "')";

                    OleDbCommand cmd_empty = new OleDbCommand(query_empty, this.gMain.openConn);

                    int i1 = cmd_empty.ExecuteNonQuery();

                    if (i1 > 0)

                    {

                        string query_sort = String.Empty;

                        query_sort = "SELECT * FROM customer WHERE (category='" + NJS_Helper.FormatStringforDB(this.lblcategoryselected.Text) + "') ORDER BY city,serial_no";

                        OleDbDataAdapter ad = new OleDbDataAdapter(query_sort, this.gMain.openConn);

                        DataSet ds = new DataSet();

                        ad.Fill(ds, "results");

                        foreach (DataRow row in ds.Tables["results"].Rows)

                        {

                            arr_serial.Add(row["serial_no"].ToString());

                        }

                        foreach (string currentitem in arr_serial)

                        {

                            if (currentitem.Equals(""))

                            {

                                current_index = arr_serial.IndexOf(currentitem);

                            }

                        }

                        int current_index_new = current_index + 1;

                        string query_update_new = String.Empty;

                        for (int i = arr_serial.Count - 1; i >= current_index_new; i--)

                        {

                            int serialno_new = i + 1;

                            int serialno_old = i;

                            query_update_new = "UPDATE customer SET serial_no='" + serialno_new + "' WHERE (category='" + this.lblcategoryselected.Text + "' AND serial_no='" + serialno_old + "')";

                            OleDbCommand cmd_update_new = new OleDbCommand(query_update_new, this.gMain.openConn);

                            cmd_update_new.ExecuteNonQuery();

                        }

                        //update empty string with new serial no

                        string query_update = String.Empty;

                        query_update = "UPDATE customer SET serial_no='" + current_index_new + "' WHERE (category='" + this.lblcategoryselected.Text + "' AND serial_no='" + String.Empty + "')";

                        OleDbCommand cmd_update = new OleDbCommand(query_update, this.gMain.openConn);

                        cmd_update.ExecuteNonQuery();
我如何更新现在......首先,我更新改变城市的空字符串,然后发现,空字符串,然后递增记录的其余部分和更新的空字符串

第一次插入下面的代码一个临时变量T,序列号之后,我选择基于对城市的记录,现在我知道了,以我现在想的序号,以便

{体C3}
现在我要订购我的序列号为1,2,3,4,5,6 T应该是3

我想这代码
{的C4}
请帮我.........| M.Ravibalaji

回答

评论会员: 时间:2
d