2017-09-17 14 views
0

我想提高,在达到数据库中的表 - 实例数:如何增加表格到达的数量?

[CustomerNo]达到50,我关闭应用程序,然后再次打开它,我希望它从50完成(++) ,并且我想从数字开始从1开始,如果它们达到250.

Globals.order ++;是我使用的。

这里是我的代码:

private void Order() 
     { 
      using (SqlConnection connection = new SqlConnection(connectionString1)) 
      { 
       String query = "INSERT INTO Tbl_order (OrderName,Quantity,Price,Serves_way,Date,CustomerNo) VALUES (@OrderName,@Quantity, @Price,'" + servers + "','" + time1.ToString(format1) + "','" + Globals.order + "')"; 
       Globals.order++; 

       connection.Open(); 
       using (SqlCommand command = new SqlCommand(query, connection)) 
       { 
        // Add the length of this text column as third parameter... 
        command.Parameters.Add("OrderName", SqlDbType.NVarChar, 50); 
        command.Parameters.Add("Quantity", SqlDbType.Int); 
        command.Parameters.Add("Price", SqlDbType.Money); 
        command.Prepare(); 

        for (int i = 0; i < lst_OrderName.Items.Count; i++) 
        { 
         command.Parameters[0].Value = lst_OrderName.GetItemText(lst_OrderName.Items[i]); 
         command.Parameters[1].Value = Convert.ToInt32(lst_QTY.Items[i]); 
         command.Parameters[2].Value = Convert.ToDouble(lst_Price2.Items[i]); 

         command.ExecuteNonQuery(); 
        } 
       } 
      } 
     } 

enter image description here

但是当我关闭应用程序,它从0再次重启。

+0

有很多(太多)_and我want_ – Sami

+0

我只想从表中获得最后一个数字并增加它,但我们如何做到这一点? –

+0

使用'C#'或'Mysql'? – Sami

回答

0

你得到上次使用的纪录:

select customerno 
from tbl_order 
order by date desc 
limit 1; 

如果返回50,那么接下来的使用数量将是51,目前尚不清楚,不过,无论你总是插入新记录,或者如果您会一次在表中有250条记录,并开始更新旧记录。如果后者是这种情况,您可能需要使用INSERT ... ON DUPLICATE KEY UPDATE

+0

我想要它只是从表中获取最后一个数字,就像我达到50,并关闭我的C#应用​​程序并打开它,它将完成从它到达(50)的最后一个数字,并通过使用C#我将使用像Globals.order ++代码来增加该数字。 –

0

如果您希望在关闭应用程序后保留一个值,则可能需要将其存储在数据库中。

你的Globals.order ++的目的是什么?

如果要增加订单号,则应该在数据库上使用某些内容,例如表格上的AUTO INCREMENT列。这意味着无论何时插入新值,值都会增加1.然后您可以使用代码来查找最近添加的数字。

如果你希望它在某个点重置,MySQL没有序列,但是这可能会有所帮助:

How do I create a sequence in MySQL?

这是否有意义?

+0

我知道^^,但我要问的是,我想知道如何从表中获取最后一个数字,就像我有48,49,50,然后关闭我的应用程序并再次打开它将完成51,52 ... 像那样 。 Globals.order ++是用于增加数量的C#代码 –