【问题标题】:How to insert a particular value against one column of gridview如何针对一列gridview插入特定值
【发布时间】:2017-03-15 08:00:08
【问题描述】:

我在 SQL 中有一个名为:Employee_Shift_Details 的表,其中包含以下列:

[Shift_Id],[Emp_Name],[Group_Name],[Emp_Id],[Time],[Date],[DayOfWeek] 
//where **Shift_Id** is primary key. 

现在我有一个包含一些数据的 Gridview。网格视图如下所示:

DayOfWeek        Date        8:45AM-6PM             2PM-11PM
Wednesday       1-Mar          John                  Olivia
Thursday        2-Mar          John                  Olivia
Friday          3-Mar          John                  Olivia
Saturday        4-Mar          Davis                 Clark          
Sunday          5-Mar          Davis                 Clark   

这里所有的员工都是A组的。

我想将此数据插入到 Employee_Shift_Details 表中,但是

  • John 和 Davis 的时间列应该有 8:45AM-6PM,因为他们在上午 8:45 到下午 6 点轮班工作
  • 2PM-11PM 代表 Olivia 和 Clark(如 gridview 所示)。

谁能帮助我如何实现这一目标? 另外在插入之前应该检查记录是否已经存在然后不要插入。

PS:Emp_Id 暂时可以留空。

【问题讨论】:

    标签: c# asp.net sql-server gridview


    【解决方案1】:

    您可以添加名称为tblshifts 的表并定义每个班次的开始和结束,然后在Employee_Shift_Details 使用shiftID 也使用recomnded 以使用employeeID 而不是名称

    【讨论】:

    • 我想按原样插入。我无法定义开始和结束。所以只需要上述逻辑的代码。
    【解决方案2】:

    尝试通过将第 3 列中的值选择为Emp_Namecolumn[3].NameTime 来循环遍历网格视图(您需要在此处进行一些转换)。第 4 列 (2PM-11PM) 也是如此。

    更一般地,您可以为网格行执行 2 个循环,另一个为具有不同 Time 值的列执行。

    编辑

    foreach (GridViewRow gvRow in gv.rows) {
        //
        var newRow = ds.Tables("Employee_Shift_Details").NewRow;
    
        //All the values below need to be casted properly
        newRow("DayOfWeek") = gvRow.cells[1].text;
        newRow("Date") = gvRow.cells[2].text;
        newRow("Emp_Name") = gvRow.Cells[3].Text;
        newRow("Time") = gv.HeaderRow.Cells[3].Text;
    
        //Save the newRow to the database
    }
    

    2PM-11PM 相同,将 3 替换为 4,如果您有超过 2 列的时移(如果您期望的话),甚至添加另一个循环层。

    【讨论】:

    • 这对我不起作用,因为我需要插入一天的数据。
    • 我没有得到零件一天
    • 如果我使用这个循环两次,那么它将在一天中添加两个日期,所以在一个循环中我想添加所有信息。
    • 你能举个例子说明你希望数据如何进入数据库[使用你之前提供的数据]。
    猜你喜欢
    • 1970-01-01
    • 2021-09-02
    • 1970-01-01
    • 1970-01-01
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多