写一个触发器实现 例子如下: CREATE OR REPLACE TRIGGER "JA_DEV".TR_ItemId BEFORE INSERT ON Item FOR EACH ROW declare com_num NUMBER; BEGIN SELECT MAX(Item_ID) INTO COM_NUM FROM Item; IF (com_num is null) THEN :NEW.Item_Id:=1; ELSE :NEW.Item_Id:=COM_NUM+1; END IF;END TR_AddItemID;
例子如下:
CREATE OR REPLACE TRIGGER "JA_DEV".TR_ItemId
BEFORE INSERT ON Item
FOR EACH ROW
declare
com_num NUMBER;
BEGIN SELECT MAX(Item_ID) INTO COM_NUM FROM Item;
IF (com_num is null) THEN
:NEW.Item_Id:=1;
ELSE
:NEW.Item_Id:=COM_NUM+1;
END IF;END TR_AddItemID;
我觉得应该会的。
在sql server里面使用identity还可以用select @@identity把差出来,因为一般情况我用这个field做连接用,需要多表插入的,而且主表中用这个field 做主键。如果使用触发器,怎么能把这个id弄出来?