首页 > 解决方案 > 为列中的每个单元格添加一个值

问题描述

我想通过向表中的每个单元格添加值来修改数据库中的特定表。我目前正在使用此代码

    Dim command As New SqlCommand("UPDATE ImportProduct_Add_Item SET home_delivery_fees = @home_delivery_fees,
                                                                     additon_customs_fees_egp = @additon_customs_fees_egp,
                                                                     customs_fees_egp = @customs_fees_egp,
                                                                     shipping_fees = @shipping_fees,
                                                                     usd_shipping_fees = @usd_shipping_fees,
                                                                     egp_shipping_fees = @egp_shipping_fees ", sqlconn)

    command.Parameters.Add("@home_delivery_fees", SqlDbType.Money).Value = (Val(TextBox22.Text) / Val(TextBox8.Text))
    command.Parameters.Add("@additon_customs_fees_egp", SqlDbType.Money).Value = (Val(TextBox25.Text) / Val(TextBox8.Text))
    command.Parameters.Add("@customs_fees_egp", SqlDbType.Money).Value = (Val(TextBox26.Text) / Val(TextBox8.Text))
    command.Parameters.Add("@shipping_fees", SqlDbType.Money).Value = (Val(TextBox23.Text) / Val(TextBox8.Text))
    command.Parameters.Add("@usd_shipping_fees", SqlDbType.Int).Value = CheckBox1.CheckState
        command.Parameters.Add("@egp_shipping_fees", SqlDbType.Int).Value = CheckBox2.CheckState
        command.ExecuteNonQuery()
    MsgBox("Done")

我想要的是乘以列中的输出并让该列的名称为“total_product_price_egp”

如下

command.Parameters.Add("@shipping_fees", SqlDbType.Money).Value = (Val(TextBox23.Text) / Val(TextBox8.Text)) * total_product_price_egp

标签: sql-servervb.net

解决方案


这个问题并不完全清楚,但基于几个假设。

  1. total_product_price_egp 是一个数据库字段
  2. 您要更新的字段是 shipping_fees

将您的代码更改为以下内容:

Dim command As New SqlCommand("UPDATE ImportProduct_Add_Item SET 
    home_delivery_fees = @home_delivery_fees,
    additon_customs_fees_egp = @additon_customs_fees_egp,
    customs_fees_egp = @customs_fees_egp,
    shipping_fees = @shipping_fees * total_product_price_egp,
    usd_shipping_fees = @usd_shipping_fees,
    egp_shipping_fees = @egp_shipping_fees ", sqlconn)

command.Parameters.Add("@home_delivery_fees", SqlDbType.Money).Value = (Val(TextBox22.Text) / Val(TextBox8.Text))
command.Parameters.Add("@additon_customs_fees_egp", SqlDbType.Money).Value = (Val(TextBox25.Text) / Val(TextBox8.Text))
command.Parameters.Add("@customs_fees_egp", SqlDbType.Money).Value = (Val(TextBox26.Text) / Val(TextBox8.Text))
command.Parameters.Add("@shipping_fees", SqlDbType.Money).Value = (Val(TextBox23.Text) / Val(TextBox8.Text))
command.Parameters.Add("@usd_shipping_fees", SqlDbType.Int).Value = CheckBox1.CheckState
command.Parameters.Add("@egp_shipping_fees", SqlDbType.Int).Value = CheckBox2.CheckState
command.ExecuteNonQuery()
MsgBox("Done")

推荐阅读