找回密码
 立即注册

QQ登录

只需一步,快速开始

moer 活字格认证
金牌服务用户   /  发表于:2023-5-19 10:54  /   查看:1054  /  回复:8
50金币


如上图,【9.0.103】跨数据库关联,需要用关联字段进行查询,有什么解决办法?
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

您好,活字格是支持同时连接多个不同类型外联库的,但是跨库关联是不支持的,这个主要是是底层数据库的限制。 楼主这边之所以实现了跨库编写视图,是因为 SQL Server 本身支持这个行为,关于这一点,您可以参考下面博客: SQL Server跨服务器操作数据库 - 宏宇 - 博客园 (cnblogs.com) 另外这里跨库视图编写后在活字格这边引入报错的原因是因为,楼主这边同时连接了连个 SQL Server 数据库实例,不同的数据库有用不同的用户登 ...

8 个回复

倒序浏览
最佳答案
最佳答案
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2023-5-19 10:54:50
来自 10#
您好,活字格是支持同时连接多个不同类型外联库的,但是跨库关联是不支持的,这个主要是是底层数据库的限制。
楼主这边之所以实现了跨库编写视图,是因为 SQL Server 本身支持这个行为,关于这一点,您可以参考下面博客:
SQL Server跨服务器操作数据库 - 宏宇 - 博客园 (cnblogs.com)

另外这里跨库视图编写后在活字格这边引入报错的原因是因为,楼主这边同时连接了连个 SQL Server 数据库实例,不同的数据库有用不同的用户登录,有不同的权限。
比如有 A 和 B 两个数据库,对应的用户分别为 UserA 和 UserB,在 A 库创建了跨库(A 和 B)视图,然后活字格引用这个视图时必须保证 UserA 这个用户除了能够有权限访问 A 库之外,还需要有权限能够访问 B 库,至少要有 B 库表数据的读权限,楼主目前给 UserA 用户赋了 B 库权限后,再将视图引入活字格就可以正常访问了。

评分

参与人数 1满意度 +5 收起 理由
moer + 5

查看全部评分

回复 使用道具 举报
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2023-5-19 12:09:23
3#
本帖最后由 Simon.Sun 于 2023-5-19 12:10 编辑

您好,首先活字格这边是不支持跨库关联查询的。
比如您想要在 T_Bill_Receiving_Item 里用关联的物料名称去做查询,您可以考虑这么去做:
1. 去物料表用名称查询出物料编号;
2. 再用第一步查询出的物料编号作为过滤条件去 T_Bill_Receiving_Item 里查询。
回复 使用道具 举报
moer活字格认证
金牌服务用户   /  发表于:2023-5-19 12:14:03
4#
attachment 发表于 2023-5-19 12:05
个人感觉最好写一个视图吧  活字格是支持跨库写试图的嘛

不支持
回复 使用道具 举报
moer活字格认证
金牌服务用户   /  发表于:2023-5-19 13:03:04
5#
  create view V_Bill_Receiving_Item as
select
tab01.ID
,T_Bill_Receiving.ReceivingNo
,T_Bill_Receiving.ReceivingDate
,tab01.BillProcureNo
,tab01.BillProcureRowNum
,tab01.MaterialNo
,tab02.FName as 'MaterialName'  --物料名称
,tab02.FSpecification   
,tab02.FBaseUnitName
,tab03.Qty
,tab01.MaterialCount
,tab01.InspectResult
from wms.[dbo].[T_Bill_Receiving_Item] as tab01
left join T_Bill_Receiving on (T_Bill_Receiving.ReceivingNo=tab01.ReceivingNo)
cross  join ERPBasic.dbo.T_BD_MATERIAL as tab02
cross join ERPBasic.dbo.T_Bill_Procure_Item as tab03
where   
(tab01.MaterialNo =tab02.FNumber)
and (tab01.BillProcureNo=tab03.SourceBillNo and tab01.BillProcureRowNum =tab03.RowNo)

我再数据库上已经成功创建视图, 在wms这个库上查询是OK的。



在活子格的设计器上为什么查询不了呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
moer活字格认证
金牌服务用户   /  发表于:2023-5-19 13:07:19
6#




这是不是一个bug?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
moer活字格认证
金牌服务用户   /  发表于:2023-5-19 13:27:32
7#

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2023-5-19 17:22:01
8#
问题跟进,远程客户,客户那边不同的 SQL Sever 数据用设置了不同的登录用户,初步调查是用户数据库权限不足导致的这个问题。
回复 使用道具 举报
夏雪冬阳
银牌会员   /  发表于:2023-5-19 20:52:42
9#
活字格能同时连接多个数据库吗
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部