# Oracle创建同义词授权用户使用
因公司一个项目需要和第三方WMS供应商做对接,开放数据库给对方访问,因考虑安全问题,给WMS开放的用户仅开放中间表的访问权限,通过同义词实现
1.创建中间表用户
CREATE USER erptowms IDENTIFIED BY erptowms;
GRANT CONNECT TO EPRTOWMS; --允许连接
GRANT CREATE SESSION TO EPRTOWMS; --允许创建会话
GRANT CREATE SYNONYM TO kq2shr; --允许创建同义词
2.在我方数据库用户下创建中间表(例:
create table ZZERP_PDD_W(
OWNERID varchar2(11),-- 货主ID
BILLCODE varchar2(50),-- 单据编号
BILLSN number(10),-- 单据序号
DATES varchar2(10),-- 日期
ONTIME varchar2(10), -- 时间
CAOZY varchar2(11),-- 操作员ID
SALEMAN VARCHAR2(20),-- 销售员
SUMMARIES varchar2(200),-- 摘要
GOODSID varchar2(11),-- 商品ID
ANGLEID varchar2(11),-- 维度ID
NUM NUMBER(14,2),-- 数量
TAXPRICE NUMBER(14,4),-- 含税价
TAXAMOUNT NUMBER(14,2),-- 含税金额
UNIT varchar2(8),-- 单位
BATCHCODE varchar2(50),-- 批号
PRODUCEDATE varchar2(10),-- 生产日期
VALDATE varchar2(10),-- 有效期至
CREATETIME varchar2(19),-- 创建时间
ZT varchar2(10),-- NULL
STORELX VARCHAR2(2),-- 仓库类型
ERPHW VARCHAR2(20),-- 业务维度
DJBS varchar2(3),-- 单据标识
REMARK varchar2(256),-- 备注
DEPT varchar2(20))-- 部门
3.授权,下传WMS表,允许WMS select,update -- erp用户下执行
grant select,update on ZZERP_PDD to erptowms;
4.授权WMS反馈表,允许WMS select,insert -- erp用户下执行
grant select,insert on ZZERP_PDD_W to erptowms;
5.创建同义词 --WMS用户下执行
CREATE OR REPLACE SYNONYM ZZERP_PDD_W FOR GZCW.ZZERP_BSD;