You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从远程SQL Server的schema_id获取schema_name的方法及文档咨询

问题解答

一、从远程服务器的schema_id获取对应架构名称

解决这个问题的核心是关联远程服务器的sys.synonyms和sys.schemas视图——sys.schemas存储了schema_id与架构名称的映射关系,且可通过链接服务器直接访问,完全适配远程数据库上下文。

具体查询语句如下:

select 
    syn.*,
    sc.name as schema_name
from 
    <remote_server>.<database>.sys.synonyms syn
join 
    <remote_server>.<database>.sys.schemas sc
on 
    syn.schema_id = sc.schema_id

这种方式直接在远程数据库的系统视图间关联,避免了本地SCHEMA_NAME()函数的上下文限制,结果准确且符合微软目录视图的使用规范。

二、替代information_schema的目录视图全面资源

  1. 官方文档:微软SQL Server官方文档中的「目录视图」章节是最权威的参考,里面详细列出了所有sys开头的目录视图,包括每个视图的用途、字段含义,以及与旧information_schema视图的对应关系,同时明确标注了优先使用目录视图的场景。
  2. 专业书籍:《SQL Server Internals》系列书籍(最新版适配SQL Server 2022)深入讲解了SQL Server的系统目录结构,涵盖目录视图的设计逻辑、内部关联关系,适合需要深度理解系统视图的开发者。

内容的提问来源于stack exchange,提问作者user3779002

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 12:22:06