sql - 在 SQL Server 的不同数据库和表中查找用户信息
问题描述
我有很多包含用户信息的不同数据库和表。我想写一个查询,可以找到所有必要的信息。因此,当我使用“where”子句时(例如 where Email = 'Example@example.com',或其中 Name = 'Mister Holmes' 等),它应该会显示我正在寻找的结果并从所有相关数据库中搜索和桌子。
我的想法是创建一个新视图,将所有相关表放入其中,然后以某种方式加入必要的列。那可能吗?
有人可以帮忙吗?
解决方案
我有同样的问题。我只是描述我的方式 - 因为我有许多不同的数据库,其中存储了关于用户的不同信息,所以我用 INSERT 收集所有这些数据库,每次我在寻找 WHERE SOMETHING 时,我都在运行:
- 截断目标表(已经准备好必要的 coll,如 NAME、LOGIN、RIGHTS、APPS、NOTES 等)
- 用来自视图的数据填充目标表,这些数据特定于每个数据库/应用程序/或用户组
这两个点我存储在程序中。也许这不是最快的方法,但是在一个静态表上搜索和过滤比在 20 个视图中搜索要安全得多,消耗更少。但是,请注意,我不是唯一的 DBA,而且您有同事在您所在地区扮演管理 sql 的角色,我认为,这个解决方案并不幸运。
或者您在 server_principals、server_role_members、database_principals、database_permissions、schema 中是否有标准用户信息?
推荐阅读
- scala - 使用 circe-config 进行配置的通用解析器
- java - 字符串转换为 LocalDate
- python-3.x - 更改 APScheduler 默认作业存储位置
- javascript - 带有反应js的聊天地图,数组内的对象
- c++ - 如何根据窗口的客户区相对于屏幕的位置设置 Direct Draw 裁剪器
- javascript - resourceGroupField 多级
- python - 如何使用 Beautifulsoup 解析网页上 {} 之间的信息
- python - 有效地重塑 3D numpy 数组
- c - 尝试在主函数中#include 头文件时出错
- symfony - 如何从symfony学说中的多对多关系第三个表中获取数据