我在为表单生成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>
答案 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;