例如,我有UserId列,它是我表的标识列。 当我向表中添加新数据时,UserId自动分配1。如果输入新数据,则列中的数字逐个增加。
UserId - UserName - UserLastName
1 asd asd
2 xyz xyz
我想更改UserId的起始值并根据我的条件增加它。
UserId - UserName - UserLastName
US1 asd asd
US2 xyz xyz
是否可以像上面一样增加字符串值?
答案 0 :(得分:0)
如果您使用的是Oracle数据库,则可以为其创建触发器。
Create or Replace TRIGGER "SYSTEM".Trigger_Name
BEFORE INSERT ON Table_Name
FOR EACH ROW
BEGIN
<<COLUMN_SEQUENCES>>
BEGIN
IF INSERTING AND :NEW.UserID IS NULL THEN
SELECT 'US'||to_char(Sequence_Name.NEXTVAL,'FM00') INTO :NEW.UserID FROM SYS.DUAL;
END IF;
END COLUMN_SEQUENCES;
END;