怎么实现设计数据库时,当我增加相同商品时该商品的库存相应的加1,
怎么实现设计数据库时,当我增加相同商品时该商品的库存相应的加1,急急急触发器 触发器 不过你不要急着学触发器 ,你现在可以在新增的时候 在做一个修改库存++ create trigger tgr_name
on table_name
with encryption
instead of update...
as
T-SQL ibcadmin 发表于 2014-8-31 09:44
触发器 不过你不要急着学触发器 ,你现在可以在新增的时候 在做一个修改库存++
我用的是UPdate来更改的。 ibcadmin 发表于 2014-8-31 09:44
触发器 不过你不要急着学触发器 ,你现在可以在新增的时候 在做一个修改库存++
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace demo_Builder1
{
public partial class Add_BookMessage : Form
{
SqlConn sqlconn;
public Add_BookMessage()
{
InitializeComponent();
}
private void Add_BookMessage_Load(object sender, EventArgs e)
{
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
}
private void button3_Click(object sender, EventArgs e)
{
this.Dispose();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
if(Sql_Select()>0)
{
string sql_select = string.Format("update Erp_MessageManage set Erp_Inventory=Erp_Inventory+1 where Erp_BookGigClass='{0}' and Erp_BookSmallClass='{1}'and Erp_BookComeIn='{2}' and Erp_BookNumber='{3}'", this.textBox1.Text, this.textBox2.Text, this.textBox4.Text, this.textBox5.Text, this.textBox3.Text);
sqlconn = new SqlConn();
sqlconn.SqlInitail(sql_select);
sqlconn.GetSqlConnection.Open();
int num = Convert.ToInt32(sqlconn.GetSqlCommand.ExecuteNonQuery());
if(num>0)
{
MessageBox.Show("该类别信息已经存在并且库存已经更新成功");
}
}
else if (Sql_Insert() > 0)
{
MessageBox.Show("添加成功");
}
else
{
MessageBox.Show("添加失败");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
sqlconn.GetSqlConnection.Close();
}
}
private int Sql_Select()
{
string sql_select = string.Format("selectcount(*) from Erp_MessageManage where Erp_BookGigClass='{0}' and Erp_BookSmallClass='{1}'and Erp_BookComeIn='{2}' and Erp_BookNumber='{3}'", this.textBox1.Text, this.textBox2.Text, this.textBox4.Text, this.textBox5.Text, this.textBox3.Text);
sqlconn = new SqlConn();
sqlconn.SqlInitail(sql_select);
sqlconn.GetSqlConnection.Open();
int num = Convert.ToInt32(sqlconn.GetSqlCommand.ExecuteScalar());
return num;
}
private int Sql_Insert()
{
string sql_insert = string.Format("insert into Erp_MessageManage(Erp_BookGigClass,Erp_BookSmallClass,Erp_BookComeIn,Erp_BookNumber,Erp_BookInventoryNumber)values('{0}','{1}','{2}','{3}','{4}')", this.textBox1.Text, this.textBox2.Text, this.textBox4.Text, this.textBox5.Text, this.textBox3.Text);
sqlconn = new SqlConn();
sqlconn.SqlInitail(sql_insert);
sqlconn.GetSqlConnection.Open();
int num = Convert.ToInt32(sqlconn.GetSqlCommand.ExecuteNonQuery());
return num;
}
}
}
触发器吧!直接用到 insert 之前。如果不会用。就建议用老方法。先判断数据库是否存在。存在。则将对字段值加1 PErson 发表于 2014-9-1 09:39
触发器吧!直接用到 insert 之前。如果不会用。就建议用老方法。先判断数据库是否存在。存在。则将对字段值 ...
触发器是干啥的 好像没见过啊 Testing_C# 发表于 2014-9-1 11:24
触发器是干啥的 好像没见过啊
数据库的一种东西。就是说。编程一个触发器。触发条件就是你只要一insert 。他就会触发。然后在里面编程写到。触发就检测插入的值是否存在。存在就不插入。就加1.不存在就插入。 PErson 发表于 2014-9-1 13:19
数据库的一种东西。就是说。编程一个触发器。触发条件就是你只要一insert 。他就会触发。然后在里面编程 ...
哦 明白了 呵呵
页:
[1]