oracle存储过程每天重置序列问题

roylao 2018-06-07 04:44:06
CREATE OR REPLACE PROCEDURE p_reset_seq IS
/*
重置序列ID
*/
PN_ID NUMBER;
n number(10);
tsql varchar2(100);

BEGIN
--重置序列1
select seq_finance_income_id.nextval into n from dual;
n:=-(n-1);
tsql:='alter sequence seq_finance_income_id increment by' || (n);
execute immediate tsql;

select seq_finance_income_id.nextval into n from dual;
tsql:='alter sequence seq_finance_income_id increment by 1';//这里运行有时会报错是什么问题?
execute immediate tsql;
commit;
--重置序列2
select seq_finance_settlement_id.nextval into n from dual;
n:=-(n-1);
tsql:='alter sequence seq_finance_settlement_id increment by' || (n);
execute immediate tsql;

select seq_finance_settlement_id.nextval into n from dual;
tsql:='alter sequence seq_finance_settlement_id increment by 1';
execute immediate tsql;

commit;
END p_reset_seq;
...全文
1411 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
卖水果的net 2018-06-08
  • 打赏
  • 举报
回复
另外有一个问题,你要注意 tsql:='alter sequence seq_finance_income_id increment by ' || (n); n = 0 的时候,你要处理一下。
卖水果的net 2018-06-08
  • 打赏
  • 举报
回复
tsql:='alter sequence seq_finance_income_id increment by' || (n); execute immediate tsql; select seq_finance_income_id.nextval into n from dual; tsql:='alter sequence seq_finance_income_id increment by 1';//这里运行有时会报错是什么问题? execute immediate tsql; commit; --重置序列2 select seq_finance_settlement_id.nextval into n from dual; n:=-(n-1); tsql:='alter sequence seq_finance_settlement_id increment by' || (n); 以上标红的3 行,都有问题。 1和 3、by 后要写一个空格 , 以拼接成 by 1, 没有空格就是 by1 了。 2、// 要换成 -- ,SQL 语句中的注释是 /* */ 或 -- ,不是能是 //
目录 前言 1 简介 课程目标 1-2 建议日程表 1-3 课程目标 1-4 Oracle 产品和服务 1-5 Oracle Database 10 g :“g”代表网格 1-6 Oracle 数据库体系结构 1-8 数据库结构 1-9 Oracle 内存结构 1-10 进程结构 1-12 Oracle 实例管理 1-13 服务器进程和数据库缓冲区高速缓存 1-14 物理数据库结构 1-15 表空间和数据文件 1-17 SYSTEM 和 SYSAUX 表空间 1-18 段、区和块 1-19 逻辑和物理数据库结构 1-20 课程示例: HR 方案 1-22 数据库体系结构:结构化组件概要 1-23 小结 1-24 2 安装 Oracle 数据库软件 课程目标 2-2 Oracle 数据库管理员的任务 2-3 用于管理 Oracle 数据库的工具 2-4 安装:系统要求 2-6 检查系统要求 2-7 灵活体系结构 (OFA) 2-8 使用灵活体系结构 2-9 设置环境变量 2-11 Oracle Universal Installer (OUI) 2-13 安装 Oracle 软件 2-14 数据库配置选项 2-15 执行配置脚本 2-16 完成安装 2-17 高级安装选项 2-18 安装选项:无提示模式 2-19 小结 2-20 练习概览:安装 Oracle 软件 2-21 3 创建 Oracle 数据库 课程目标 3-2 为数据库制定计划 3-3 数据库:示例 3-4 Database Configuration Assistant (DBCA) 3-5 使用 DBCA 创建数据库 3-6 口令管理 3-12 创建数据库设计模板 3-13 使用 DBCA 删除数据库 3-14 小结 3-16 练习概览:使用 DBCA 3-17 4 管理 Oracle 实例 课程目标 4-2 管理框架 4-3 启动和停止 Database Control 4-4 Oracle Enterprise Manager 4-5 访问 Oracle Enterprise Manager 4-6 数据库主页 4-7 使用 SQL*Plus 和 iSQL*Plus 访问数据库 4-8 使用 iSQL*Plus 4-9 为了以 SYSDBA 和 SYSOPER 身份进行访问而设置 iSQL*Plus 4-10 使用 SQL*Plus 4-12 从 Shell 脚本调用 SQL*Plus 4-13 从 SQL*Plus 调用 SQL 脚本 4-14 初始化参数文件 4-15 简化初始化参数 4-16 查看和修改初始化参数 4-18 数据库启动和关闭 4-19 启动 Oracle 数据库实例 4-20 启动 Oracle 数据库实例:NOMOUNT 4-21 启动 Oracle 数据库实例:MOUNT 4-22 启动 Oracle 数据库实例:OPEN 4-23 关闭 Oracle 数据库实例 4-24 关闭模式 4-25 SHUTDOWN 选项 4-26 使用 SQL*Plus 启动和关闭 4-29 查看预警日志 4-30 查看预警历史记录 4-31 动态性能视图 4-32 动态性能视图:用法示例 4-33 动态性能视图:注意事项 4-34 小结 4-35 练习概览:管理 Oracle 实例 4-36 5 管理数据库存储结构 课程目标 5-2 存储结构 5-3 如何存储表数据 5-4 数据库块的结构 5-5 表空间和数据文件 5-6 Oracle Managed Files (OMF) 5-7 表空间中的空间管理 5-8 浏览存储结构 5-9 创建新表空间 5-10 本地管理表空间的存储 5-12 预配置数据库中的表空间 5-14 变更表空间 5-16 对表空间执行的操作 5-18 删除表空间 5-20 查看表空间信息 5-21 采集存储信息 5-22 查看表空间内容 5-23 扩大数据库 5-24 什么是 Automatic Storage Management 5-25 ASM:主要功能和优点 5-26 ASM:概念 5-27 小结 5-28 练习概览:管理数据库存储结构 5-29 6 管理用户安全性 课程目标 6-2 数据库用户帐户 6-3 预定义帐户: SYS 和 SYSTEM 6-4 创建用户 6-5 验证用户 6-6 管理员验证 6-8 解除用户帐户的锁定并重置口令 6-9 权限 6-10 系统权限 6-11 对象权限 6-13 使用 ADMIN OPTION 撤销系统权限 6-14 使用 GRANT OPTION 撤销对象权限 6-15 角色的作用 6-16 将权限分配给角色以及将角色分配给用户 6-17 预定义角色 6-18 创建角色 6-19 保护角色 6-20 将角色分配给用户 6-21 概要文件和用户 6-22 实施口令安全功能 6-24 创建口令概要文件 6-26 提供的口令验证函数:VERIFY_FUNCTION 6-27 将限额分配给用户 6-28 小结 6-30 练习概览:管理用户 6-31 7 管理方案对象 课程目标 7-2 什么是方案 7-3 访问方案对象 7-5 命名数据库对象 7-6 指定表中的数据类型 7-8 创建和修改表 7-11 了解数据完整性 7-13 定义约束条件 7-15 违反约束条件 7-16 约束条件状态 7-17 约束条件检查 7-19 使用 SQL 创建约束条件:示例 7-20 查看表中的列 7-21 查看表的内容 7-22 对表执行的操作 7-23 删除表 7-24 截断表 7-25 索引 7-26 索引类型 7-27 B 树索引 7-28 位图索引 7-30 索引选项 7-32 创建索引 7-34 什么是视图 7-35 创建视图 7-36 序列 7-37 创建序列 7-38 使用序列 7-40 临时表 7-41 临时表:注意事项 7-43 数据字典:概览 7-44 数据字典视图 7-45 数据字典:用法示例 7-46 小结 7-47 练习概览:管理方案对象 7-48 。。。。
前言 1 简介 课程目标1-2 建议日程表1-3 课程目标1-4 Oracle 产品和服务1-5 Oracle Database 10g:“g”代表网格1-6 Oracle 数据库体系结构1-8 数据库结构1-9 Oracle 内存结构1-10 进程结构1-12 Oracle 实例管理1-13 服务器进程和数据库缓冲区高速缓存1-14 物理数据库结构1-15 表空间和数据文件1-17 SYSTEM 和SYSAUX 表空间1-18 段、区和块1-19 逻辑和物理数据库结构1-20 课程示例:HR 方案1-22 数据库体系结构:结构化组件概要1-23 小结1-24 2 安装Oracle 数据库软件 课程目标2-2 Oracle 数据库管理员的任务2-3 用于管理Oracle 数据库的工具2-4 安装:系统要求2-6 检查系统要求2-7 灵活体系结构(OFA) 2-8 使用灵活体系结构2-9 设置环境变量2-11 Oracle Universal Installer (OUI) 2-13 安装Oracle 软件2-14 数据库配置选项2-15 执行配置脚本2-16 完成安装2-17 高级安装选项2-18 安装选项:无提示模式2-19 小结2-20 练习概览:安装Oracle 软件2-21 目录 iii 3 创建Oracle 数据库 课程目标3-2 计划数据库3-3 数据库:示例3-4 Database Configuration Assistant (DBCA) 3-5 使用DBCA 创建数据库3-6 口令管理3-12 创建数据库设计模板3-13 使用DBCA 删除数据库3-14 小结3-16 练习概览:使用DBCA 3-17 4 管理Oracle 实例 课程目标4-2 管理框架4-3 启动和停止Database Control 4-4 Oracle Enterprise Manager 4-5 访问Oracle Enterprise Manager 4-6 数据库主页4-7 使用SQL*Plus 和iSQL*Plus 访问数据库4-8 使用iSQL*Plus 4-9 为了以SYSDBA 和SYSOPER 身份进行访问而设置iSQL*Plus 4-10 使用SQL*Plus 4-12 从Shell 脚本调用SQL*Plus 4-13 从SQL*Plus 调用SQL 脚本4-14 初始化参数文件4-15 简化初始化参数4-16 查看和修改初始化参数4-18 数据库启动和关闭4-19 启动Oracle 数据库实例4-20 启动Oracle 数据库实例:NOMOUNT 4-21 启动Oracle 数据库实例:MOUNT 4-22 启动Oracle 数据库实例:OPEN 4-23 关闭Oracle 数据库实例4-24 关闭模式4-25 SHUTDOWN 选项4-26 使用SQL*Plus 启动和关闭4-29 查看预警日志4-30 查看预警历史记录4-31 动态性能视图4-32 iv 动态性能视图:用法示例4-33 动态性能视图:注意事项4-34 小结4-35 练习概览:管理Oracle 实例4-36 5 管理数据库存储结构 课程目标5-2 存储结构5-3 如何存储表数据5-4 数据库块的结构5-5 表空间和数据文件5-6 Oracle 管理文件(OMF) 5-7 表空间中的空间管理5-8 浏览存储结构5-9 创建新表空间5-10 本地管理表空间的存储5-12 预配置数据库中的表空间5-14 变更表空间5-16 表空间操作5-18 删除表空间5-20 查看表空间信息5-21 采集存储信息5-22 查看表空间内容5-23 扩大数据库5-24 什么是自动存储管理5-25 ASM:主要功能和优点5-26 ASM:概念5-27 小结5-28 练习概览:管理数据库存储结构5-29 6 管理用户安全性 课程目标6-2 数据库用户帐户6-3 预定义帐户:SYS 和SYSTEM 6-5 创建用户6-6 验证用户6-7 管理员验证6-9 解除用户帐户的锁定并重置口令6-10 权限6-11 系统权限6-12 对象权限6-14 v 撤销具有ADMIN OPTION 的系统权限6-15 撤销具有GRANT OPTION 的对象权限6-16 角色的作用6-17 将权限分配给角色以及将角色分配给用户6-18 预定义角色6-19 创建角色6-20 保护角色6-21 将角色分配给用户6-22 概要文件和用户6-23 实施口令安全功能6-25 创建口令概要文件6-27 提供的口令验证函数:VERIFY_FUNCTION 6-28 将限额分配给用户6-29 小结6-31 练习概览:管理用户6-32 7 管理方案对象 课程目标7-2 什么是方案7-3 访问方案对象7-5 命名数据库对象7-6 指定表中的数据类型7-8 创建和修改表7-11 了解数据完整性7-13 定义约束条件7-15 违反约束条件7-16 约束条件状态7-17 约束条件检查7-19 使用SQL 创建约束条件:示例7-20 查看表中的列7-21 查看表的内容7-22 表操作7-23 删除表7-24 截断表7-25 索引7-26 索引类型7-27 B 树索引7-28 位图索引7-30 索引选项7-32 创建索引7-34 vi 什么是视图7-35 创建视图7-36 序列7-37 创建序列7-38

17,088

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧