oracle 批量创建 99 个用户 A01-A99,口令均为 tiger,在这 99 位用户下都建立 emp 表并且把 scott 的 emp 表内容复制过去
时间: 2024-02-06 07:02:31 浏览: 155
可以使用以下脚本批量创建 99 个用户,并在每个用户下创建 emp 表并复制 scott 的 emp 表内容:
```sql
-- 创建 99 个用户
DECLARE
i NUMBER := 1;
BEGIN
FOR i IN 1..99 LOOP
EXECUTE IMMEDIATE 'CREATE USER A' || LPAD(i, 2, '0') || ' IDENTIFIED BY tiger';
END LOOP;
END;
/
-- 授权表空间
GRANT CONNECT, RESOURCE TO A01-A99;
-- 在每个用户下创建 emp 表
DECLARE
i NUMBER := 1;
BEGIN
FOR i IN 1..99 LOOP
EXECUTE IMMEDIATE 'CREATE TABLE A' || LPAD(i, 2, '0') || '.EMP AS SELECT * FROM SCOTT.EMP WHERE 1=2';
END LOOP;
END;
/
-- 复制 scott 的 emp 表内容到每个用户的 emp 表中
DECLARE
i NUMBER := 1;
BEGIN
FOR i IN 1..99 LOOP
EXECUTE IMMEDIATE 'INSERT INTO A' || LPAD(i, 2, '0') || '.EMP SELECT * FROM SCOTT.EMP';
END LOOP;
END;
/
```
上述脚本首先使用循环创建 99 个用户,口令均为 tiger,然后授权表空间,并在每个用户下创建 emp 表。最后,使用循环将 scott 的 emp 表内容复制到每个用户的 emp 表中。
阅读全文