//生成调拨单时数量相应减少
private DbColumn[] BuildDstockproductColumns2(int num)
{
var dbColumns = new DbColumn[] {
new DbColumn(stock_product_detailTable.product_qty,string.Format("product_qty-{0}",num),DbType.Int32,true),
new DbColumn(stock_product_detailTable.outstock_qty,string.Format("outstock_qty-{0}",num),DbType.Int32,true)
};
return dbColumns;
}
这段代码本身没有任何问题,使用也正常,但是设想一下,如果num传入的结果为负数,会造成怎样有趣的结果
生成的Update语句为update tb set 字段=字段-num
如果传入负数,生成了update tb set 字段=字段--num,在sql中,--为注释语句,更新就没有效果了。
经过处理后代码如下:
//生成调拨单时数量相应减少
private DbColumn[] BuildDstockproductColumns2(int num)
{
var dbColumns = new DbColumn[] {
new DbColumn(stock_product_detailTable.product_qty,string.Format("product_qty-({0})",num),DbType.Int32,true),
new DbColumn(stock_product_detailTable.outstock_qty,string.Format("outstock_qty-({0})",num),DbType.Int32,true)
};
return dbColumns;
}
浙公网安备 33010602011771号