使用当前DATE创建ID以及其他自动增量编号

时间:2015-03-16 14:50:36

标签: javascript oracle asp-classic

我在为表单生成ID时遇到了问题。我目前正在使用ASP Classic和Oracle。 我需要创建具有当前日期和2个额外数字的ID 例如:yyyymmdd +按顺序排列的自动增量编号(2015031601,2015031602)。

到目前为止,我只能使用在Javascript中使用Math.random()函数创建的随机数返回表单中的当前日期值。但是,ID实际上需要依次具有自动增量编号。

随机数的当前日期和数学随机代码:

    var date = new Date();
    var todaydate= date.getDate();
    var todaymon= date.getMonth()+1;
    var todayyear= date.getFullYear();
    var q=todayyear; 
    if(todaymon<=9)
    {
        var y= "0"+todaymon;
    }
    else
        var y= todaymon;

    if(todaydate<=9)
    {
        var z="0"+todaydate;
    }
    else
        var z=todaydate; 

    var k = Math.floor((Math.random() * 20) + 01);
</script>

<script language="JavaScript">
    document.getElementById('ID').value = q+y+z+k;
</script>

1 个答案:

答案 0 :(得分:1)

创建ORACLE序列

CREATE SEQUENCE table_name_seq;

并在BEFORE INSERT触发器中提供id

CREATE TRIGGER table_name_BRI ON table_name
BEFORE INSERT
FOR EACH ROW IS
BEGIN
  SELECT TO_NUMBER(TO_CHAR(SYSDATE, 'YYYYMMDD') || table_name_seq.NEXTVAL)
  INTO :NEW.id
  FROM dual;
END;