gpt4 book ai didi

带有变量 : Creating Sequence with current date and host address 的 Oracle pl/sql

转载 作者:行者123 更新时间:2023-12-04 05:26:22 26 4
gpt4 key购买 nike

这是一个关于如何创建带有变量的序列的简单问题。
我想使用系统时间的组合创建一个序列作为它的起始值。我该怎么做。

这是我写的:

DECLARE
SQS number :=(sysdate - to_date('01-JAN-1970','DD-MON-YYYY')) * (864000);
sql_stmt varchar2(200);
BEGIN
sql_stmt := 'create SEQUENCE XXXX_id_seq MINVALUE 100000 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH :1 CACHE 500 NOORDER CYCLE';
EXECUTE IMMEDIATE sql_stmt using SQS;
END;

但它说无效的号码。
我知道这是一个菜鸟问题。但我真的需要帮助。

最佳答案

您不能在 DDL 语句中绑定(bind)变量(我没有文档或一个很好的理由,但是很多引用资料都提到了这一事实),您必须将所有内容连接在一起。

DECLARE
SQS number :=(sysdate - to_date('01-JANV.-1970','DD-MON-YYYY')) * (864000);
sql_stmt varchar2(200);
BEGIN
sql_stmt := 'create SEQUENCE XXXX_id_seq MINVALUE 100000 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH '||SQS||' CACHE 500 NOORDER CYCLE';
EXECUTE IMMEDIATE sql_stmt ;
END;

关于带有变量 : Creating Sequence with current date and host address 的 Oracle pl/sql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13173913/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com