1

如何在我的 aspx 页面中编写插入查询,如下所示???

insert into tablname(field1 ,field2, field3)values(@field1,@field2,@field1-@field2)

在这里,我也将field3设为数据库中的计算列,即field1 -field2在数据库中。插入字段中的值在文本框中,所以我想在运行时计算两个文本框的差异,然后将该值插入数据库中。我怎样才能做到这一点?

4

2 回答 2

0

无需在插入中包含字段 3。

来自 MSDN:除非另有说明,否则计算列是未物理存储在表中的虚拟列

因此,您可以在表单上显示计算值,但是当您实际插入数据库时​​,只需插入 2 个值。查询表时将计算 field3 的值。

于 2013-03-25T17:12:22.900 回答
0

有很多方法,但我建议您创建一个带有两个参数的存储过程@field1@field2从那里执行插入语句,就像您可以在存储过程中创建一个局部变量,它将计算值@field3 = @field1 - @field2并提交值(@field1, @field2, @field3)

create table test22(field1 int, field2 int, field3 int)

create proc inserttest22
    @field1 int,
    @field2 int
as
    declare @field3 int

    set @field3 = @field1 - @field2

    insert into test22 values (@field1, @field2, @field3)
go
于 2013-04-18T16:38:04.730 回答