--oracle 触发器,转 sqlserver 问题
--oracle 触发器,转 sqlserver 问题
CREATE OR REPLACE TRIGGER TG_BU_TSTK_IMPORTITEM
BEFORE UPDATE ON TSTK_IMPORTITEM
FOR EACH ROW
DECLARE
VAR_LIBGOODCOUNT NUMERIC(12,2);
BEGIN
---在Oracle 是有:new. 代表是新的值, :old 代表是旧的值, 我利用这两个数来更改另外一个数量
---请问在sql server 的触发器代码该如何做?取得 :old.f_count 和 new.f_count ?
IF (:OLD.F_COUNT <> :NEW.F_COUNT) OR (:OLD.F_BARCODE <>:NEW.F_BARCODE) THEN
UPDATE STK_COMMODITY SET F_COUNT=F_COUNT-:OLD.F_COUNT WHERE F_ACCOUNTSUITID=:OLD.F_ACCOUNTSUITID
AND F_BARCODE=:OLD.F_BARCODE;
UPDATE STK_COMMODITY SET F_COUNT=F_COUNT+:NEW.F_COUNT WHERE F_ACCOUNTSUITID=:NEW.F_ACCOUNTSUITID
AND F_BARCODE=:NEW.F_BARCODE;
END IF;
END;
/
基本写法如下:
--触发器的操作1
create table 化验室纱组(本厂编号 int,客户 int,色号 int,纱支 int)
create table 化验室布组(本厂编号 int,客户 int,色号 int,布类 int)
go
create trigger my_trig on 化验室纱组 for insert ,update ,delete
as
if not exists(select 1 from inserted)
delete 化验室布组 from deleted t where 化验室布组.本厂编号 = t.本厂编号
else if not exists(select 1 from deleted)
insert into 化验室布组(本厂编号 ,客户 ,色号) select 本厂编号 ,客户 ,色号 from inse
相关问答:
代码:
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
con= DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost: ......
先由如下sql语句
select A,B,C from table1
union
select A,B,C from table2
order by A, C asc
得到结果如下:
A B &nbs ......
在SqlServer中如何查看数据库的对象,比如我想查看数据中有哪些表,视图,函数,过程。
(通过sql语句来查,而不是通过企业管理器看)
ps:主要是因为我有两个数据库,库结构很相似,我想对比一下,找出对 ......
需要使用SQL Server2000或2005
需要设计数据有效验证,防止录入不合法数据
需要设计存储过程或自定义函数完成数据的录入\修改\删除\统计\查询
数据库大部分表我已经建立,只是辅助性的小表建立的还不全
......
SQL SERVER能获得连接的用户的IP吗?
主要想实现以下:
一个用户连接到数据库,把用户的用户名与IP都保存在数据库中,来实现用户登录的功能。
最好是用户调用一个存储过程,把用户名作参数,存储过程就 ......