Windows下SAP Sybase ASE ODBC驱动:指定不同用户使Excel导航显示表
解决Excel通过Sybase ASE ODBC导航无法显示指定用户表的问题
针对登录用户名与表所属用户不一致导致Excel导航窗口看不到表的情况,有几个可行的解决办法:
修改ODBC数据源的默认用户/架构设置
打开系统的ODBC数据源管理器,找到你配置的Sybase ASE数据源并进入编辑界面。在连接属性中查找「默认架构」或「默认用户」选项(不同版本驱动可能显示为Default Schema或Default User),填入你需要访问的<user>用户名。保存配置后重新连接Excel,导航窗口应该会加载该用户名下的所有表。在Sybase服务器端调整登录用户的权限与默认架构
用Sybase管理员账号执行以下操作:- 先给登录用户授权访问目标用户的表:
(如果需要增删改权限,可以把GRANT SELECT ON <user>.* TO <login_user>;SELECT换成ALL或对应权限) - 设置登录用户的默认架构为目标用户:
sp_modifylogin '<login_user>', 'defaultschema', '<user>';
完成后重新登录,Excel导航窗口就能直接显示目标用户的表。
- 先给登录用户授权访问目标用户的表:
手动创建自定义查询映射表
虽然导航窗口看不到,但可以通过Excel的「数据」选项卡,选择「获取数据」→「从其他来源」→「从ODBC」,连接到Sybase后直接输入SELECT * FROM <user>.T001这类查询语句,将结果加载到Excel后保存该查询为连接。后续可以直接通过这个连接访问对应表的数据,相当于手动建立表的访问映射。
内容的提问来源于stack exchange,提问作者Enrico
相关产品推荐
相关产品推荐

