Oracle
SQL LOADER导入数据
用户授权表与权限回收
行列转置
SQLPLUS导出数据(SPOOL)
存储过程记录执行异常日志
查看对象创建时间
停止正在执行的DBMS_JOB
表死锁查询
查看正在执行的sql语句
数组,自定义类型
查看最后一次DML的时间
递归(CONNECT BY)
时间间隔(1h2m3s)
REGEXP_SUBSTR行变列
TRANSLATE函数
执行动态SQL
LISTAGG和WM_CONCAT函数列合并为行
表统计分析
表空间大小统计
收缩表段(shrink space)
集合类型
LIKE操作转义
分析函数(窗口函数)
高级分组 ROOLUP、CUBE、GROUPING SETS
SYS_CONTEXT()函数
进制转换
创建DBMS_JOB
执行超长的动态DDL语句
查询占用空间前100的数据表
MERGE 语句使用(UPSERT)
随机生成密码
Scheduler job
递归获取组织的全称
执行job和停止job
本站点使用 MrDoc 构建
-
+
首页
随机生成密码
# 随机生成密码 ```SQL --随机生成指定位数的密码 DECLARE p_str VARCHAR2(1000); --用于生成密码的字符串 v_num NUMBER := 8; --密码长度 v_count NUMBER := 10; --生成密码的个数 v_pass VARCHAR2(100); --密码 BEGIN p_str := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'||'abcdefghijklmnopqrstuvwxyz'||'0123456789'||'~!@#$^&*<>?-_=+'; FOR i IN 1..v_count LOOP v_pass := ''; FOR i IN 1..v_num LOOP v_pass := v_pass || SUBSTR(p_str,dbms_random.value(1,LENGTHC(p_str)+1),1); END LOOP; dbms_output.put_line(v_pass); END LOOP; END; --生成含大写字母、小写字母、数字和特殊字符的高强度密码 DECLARE p_str VARCHAR2(1000); --用于生成密码的字符串 v_num NUMBER := 10; --密码长度 v_count NUMBER := 10; --生成密码的个数 v_pass VARCHAR2(100); --密码 v_c NUMBER := 1; --计数 BEGIN p_str := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'||'abcdefghijklmnopqrstuvwxyz'||'0123456789'||'!#$%&()*+,-.:;<=>?@[]^_`{|}~'; WHILE v_c <= v_count LOOP v_pass := ''; FOR i IN 1..v_num LOOP v_pass := v_pass || SUBSTR(p_str,dbms_random.value(1,LENGTHC(p_str)+1),1); END LOOP; IF regexp_instr(v_pass,'[[:upper:]]+') > 0 --含大写字母 AND regexp_instr(v_pass,'[[:lower:]]+') > 0 --含小写字母 AND regexp_instr(v_pass,'[[:digit:]]+') > 0 --含数字 AND regexp_instr(v_pass,'[^[:alnum:]]+') > 0 --含非字母和大小写数字,即特殊字符 THEN dbms_output.put_line(v_pass); v_c := v_c + 1; END IF; END LOOP; END; ```
vleity
2025年5月17日 17:24
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码