目录
- 背景
- 创建用户
- 创建基础表及数据
- 创建同义词
- 回收权限
- 删除用户
背景
测试Oracle数据库创建同义词功能。
创建用户
-- 切换到 SYS 用户
CONNECT SYS/your_password AS SYSDBA;-- 创建 HR 用户
CREATE USER HR IDENTIFIED BY hr_password;
GRANT DBA TO HR;-- 创建 SCOTT 用户
CREATE USER SCOTT IDENTIFIED BY scott_password;
GRANT DBA TO SCOTT;
创建基础表及数据
-- 切换到 HR 用户
CONNECT HR/hr_password;-- 创建员工表
CREATE TABLE employees (employee_id NUMBER PRIMARY KEY,first_name VARCHAR2(50),last_name VARCHAR2(50),hire_date DATE
);
-- 插入测试数据
INSERT INTO HR.employees (employee_id, first_name, last_name, hire_date)
VALUES (1, 'John', 'Doe', SYSDATE);
COMMIT;
-- 查询数据
SELECT * FROM HR.employees;
创建同义词
-- 切换到SCOTT用户
CONNECT SCOTT/scott_password;-- 创建同义词
CREATE SYNONYM emp_synonym FOR HR.employees;-- 查询员工表
SELECT * FROM emp_synonym;
回收权限
-- 切换到 HR 用户
CONNECT HR/your_password;-- 撤销 SCOTT 用户的查询权限
REVOKE SELECT ON employees FROM SCOTT;
删除用户
-- 切换到 SYS 用户
CONNECT SYS/your_password AS SYSDBA;-- 删除 HR 用户
DROP USER HR CASCADE;-- 创建 SCOTT 用户
DROP USER SCOTT CASCADE;