如何在Oracle 10g上使用AUTO_INCREMENT和Text创建id?

时间:2018-04-18 22:57:51

标签: forms plsql oracle10g sequence auto-increment

目前有一个序列和触发器设置,我想在自动递增的数字之前添加文本,即当我插入一个新记录时,数字会自动出现,我想为我的ID设置一个文本,唯一的变量是自动增量。

创建SEQUENCE Student_sequence

range

TRIGGER CODE:

class C1:
    def __init__(*args):
        print("C1 init")

class C2:
    def __init__(*args):
        print("C2 init")

class C3:
    def __init__(*args):
        print("C3 init")

classes = [C1, C2, C3]
keys = 'abc'
data = [3, 5]
gen = ({keys[i]: classes[i](*data)} for i in range(len(keys)))

# each time you want an element out:
new_dict = next(gen)

无论如何要获得“STU”在自动递增数字的前面?

1 个答案:

答案 0 :(得分:0)

只要students.studentID是一个字符字段而不是数字,那么以下内容应该有效。

SELECT 'STU' || Student_sequence.NEXTVAL
INTO :Students.StudentID
FROM DUAL;