需求
在两个达梦数据库环境中,需要让192.142.8.101:5236
上的用户 SZJG_HSJGJC
拥有访问 192.142.8.86:5236
上 SZJG_TYRKKZ
模式下的两个表 TYRKKZ_THIRD_ORG
和 TYRKKZ_RYQX_JGC_ZZXX
的查询权限。
解决方案
-
创建外部链接:
在
192.142.8.101:5236
上执行以下语句,创建到192.142.8.86:5236
的公共链接。sqlCREATE PUBLIC LINK IF NOT EXISTS link_to_tyrkkz CONNECT 'DPI' WITH SZJG_TYRKKZ IDENTIFIED BY 密码 USING '192.142.8.86:5236';
-
创建同义词:
在
192.142.8.101:5236
上使用SZJG_HSJGJC
用户创建同义词,使其能够访问外部链接上的目标表。sqlCREATE SYNONYM TYRKKZ_THIRD_ORG FOR SZJG_TYRKKZ.TYRKKZ_THIRD_ORG@link_to_tyrkkz; CREATE SYNONYM TYRKKZ_RYQX_JGC_ZZXX FOR SZJG_TYRKKZ.TYRKKZ_RYQX_JGC_ZZXX@link_to_tyrkkz;
验证
验证同义词创建情况:
执行以下查询,确保同义词已经成功创建。
sql
SELECT * FROM ALL_SYNONYMS WHERE SYNONYM_NAME IN ('TYRKKZ_THIRD_ORG', 'TYRKKZ_RYQX_JGC_ZZXX');
查询和插入数据:
sql
-- 查询 TYRKKZ_THIRD_ORG 表数据
SELECT * FROM TYRKKZ_THIRD_ORG;
-- 插入数据(测试写入权限)
INSERT INTO TYRKKZ_THIRD_ORG (
"PRIPID", "UNISCID", "ENTNAME", "NAME", "DOM", "ESTDATE",
"REGORG", "REGORG_CN", "REGSTATE", "REGSTATE_CN", "OPSCOPE",
"APPRDATE", "ENTTYPE", "ENTTYPE_CN", "OPFROM", "OPTO",
"REGCAP", "REGCAPCUR", "REGCAPCUR_CN", "INDUSTRYCO", "INDUSTRYCO_CN",
"DOMDISTRICT", "DOMDISTRICT_CN", "DATADEPT", "ORG_TYPE",
"IS_VALID", "IS_BEIJING", "ADMINIST_AREA", "OPT_MEMO",
"STREET_CODE", "STREET_CN", "HIS_NAME", "PHONE",
"BUSINESS_ADDRESS", "ALIAS", "CREATE_TIME", "UPDATE_TIME"
) VALUES (
'PRIPID001', 'UNISCID001', '企业名称', '法定代表人', '住所地址', TO_TIMESTAMP('2024-06-28 12:00:00', 'YYYY-MM-DD HH24:MI:SS'),
'注册机关', '注册机关中文名', 'Y', '已注册', '经营范围内容',
TO_TIMESTAMP('2024-06-28 12:00:00', 'YYYY-MM-DD HH24:MI:SS'), '企业', '企业', TO_TIMESTAMP('2024-06-28 12:00:00', 'YYYY-MM-DD HH24:MI:SS'), TO_TIMESTAMP('2024-06-28 12:00:00', 'YYYY-MM-DD HH24:MI:SS'),
100000.00, 'CNY', '人民币', '行业代码', '行业名称',
'行政区划', '行政区划中文名', '数据来源方式', '机构类型',
'0', '1', '北京', '备注内容',
'街道编码', '街道名称', '曾用名', '联系电话',
'经营地址', '别名', TO_TIMESTAMP('2024-06-28 12:00:00', 'YYYY-MM-DD HH24:MI:SS'), TO_TIMESTAMP('2024-06-28 12:00:00', 'YYYY-MM-DD HH24:MI:SS')
);
这些步骤和查询将确保 SZJG_HSJGJC
用户能够成功访问并操作 TYRKKZ_THIRD_ORG
和 TYRKKZ_RYQX_JGC_ZZXX
这两个表的数据。