Amazon RDS SQL Server:如何检测是否是RDS?

2024-03-06

我正在尝试将我的数据库移植到 RDS。由于限制需要做一些改变。

是否可以检测当前数据库位于 RDS 中的内部脚本(存储过程等)?

更新。 我在我的函数中使用这种方式进行测试:

if CHARINDEX(N'EC2AMAZ',(cast(serverproperty('ServerName') as nvarchar(256))))>0 
   return 1 
else 
   return 0

我喜欢 @xiani 的方法,并决定稍微增强它(如果 SQL Server 的“正常”实例有一个[rdsadmin]数据库)。

DECLARE @IsAmazonRDS BIT = 0;

--1st test: does the [rdsadmin] database exist?
IF DB_ID('rdsadmin') IS NOT NULL
BEGIN
    BEGIN TRY
        --2nd test: If this is an Amazon RDS instance, we should not able to access the database "model" under the current security context.
        DECLARE @FileCount INT;
        SELECT @FileCount = COUNT(*) FROM model.sys.database_files;
    END TRY
    BEGIN CATCH
        SET @IsAmazonRDS = 1;
        --Comment/uncomment to verify the flag is set.
        --SELECT 'Inside Catch';
    END CATCH
END

可以根据您确定的标准进行第三次、第四次等额外检查来补充。自己决定你想走多远。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Amazon RDS SQL Server:如何检测是否是RDS? 的相关文章

  • T-SQL - 将日期时间更改为日期数据类型?

    我有一个专栏BirthDate在使用的表中datetime数据类型 目前 这些值类似于以下格式1987 12 30 00 00 00 000 我想更新该表的所有行 将它们更改为以下格式date数据类型 1987 12 30 我可以运行 SE
  • TSQL 帮助 - 一种获取行第 N 列中的值的方法?

    我希望找到一种方法来获取数据集第 N 列中的值 因此 对于 N 6 我想要 SELECT Column6Value from MyTable where MyTable RowID 14 有没有办法在 SQL Server 2005 中实现
  • 如何将 Byte[] 转换为数据以在 SQL Server 中的 varbinary(max) 列中插入值?

    我有一个对象byte 属性 我想将此值转换为正确的值 以便可以使用 T SQL 将其插入数据库 但我不知道如何转换byte 为 T SQL 插入的正确值 Thanks 创建一个控制台应用程序项目并尝试此代码 Sample Class pub
  • Azure:用户登录失败

    我做了什么 我在 Azure 中添加了资源组 添加了带有先前资源组的 Web 服务 添加了带有先前资源组的 SQL Server 数据库 从此数据库检索生成的连接字符串并在此处提供用户名和密码 将此连接字符串添加到Web服务中的应用程序设置
  • 错误:使用 UNION、INTERSECT 或 EXCEPT 运算符组合的所有查询在其目标列表中必须具有相同数量的表达式

    我正在尝试创建一个存储过程 该过程将通过电子邮件发送一个 HTML 表 该表使用包含 Unions 的查询 但我不断得到 使用 UNION INTERSECT 或 EXCEPT 运算符组合的所有查询在其目标列表中必须具有相同数量的表达式 我
  • SQL - 我需要将总值划分为另一个表中的多行

    假设我在 SQL Server 2008 中有以下表 学校桌 School Id Course Id Total Students 1 Acct101 150 1 Acct102 100 2 Acct101 110 2 Acct102 13
  • sql查询仅删除一个重复行

    我有一个表 其中有一些重复的行 我只想删除一个重复的行 例如 我有 9 个重复行 因此应仅删除一行并应显示剩余 8 行 example 日期调用调用持续时间时间戳 2012 06 19 10 22 45 000 165 218 155 1
  • SQL Server:将数据从一列复制到另一列?

    我有两个具有相同列的表anomaly id 我想复制该行anomaly id使用此代码从第一个表到第二个表 UPDATE amb anamoly log update SET anamoly id t2 anomaly id FROM am
  • 从长到宽 - SQL [重复]

    这个问题在这里已经有答案了 我有一张很长的桌子 例如 Date Person Number 2015 01 03 A 4 2015 01 04 A 2 2015 01 05 A 3 2015 01 03 B 5 2015 01 04 B 6
  • 如何使用 REST API 导出 SSRS 2017 报告

    我已经设置了 SSRS 2017 我需要使用他们的新 REST API 导出 SSRS 报告 我一直在查看 API 规范here https app swaggerhub com apis microsoft rs SSRS 2 0但我在
  • 随机分配工作地点,每个地点不得超过指定员工人数

    我正在尝试在位置列表中选择唯一的随机发布 招聘员工位置 所有员工都已发布在这些位置 我正在尝试为他们生成一个新的随机发布位置 其 位置 条件为 员工新 随机位置将不等于他们的家乡 并且随机选择的员工及其职称必须小于或等于 地点 表中的 地点
  • 使用具有外键的表将数据从 asp.net 页面插入到我的数据库中

    我是一名初学asp net程序员 我的项目是网上购物课程 我有一些问题 我有 4 个表 它们之间有一些外键 CREATE TABLE dbo orderdetails orderid INT NOT NULL classid INT NOT
  • 在 SQLCMD 模式下格式化输出?

    有没有办法可以指定输出文件格式SQLCMD模式这样我就可以使用它读回来BULK INSERT 我想做这样的事情 CONNECT SERVER1 OUT E test SELECT TOP 100 ID NAME FROM DB1 dbo T
  • Id 或 [TableName]Id 作为主键/实体标识符

    是否首选使用 Id 作为主键的列名或 TableName Id 作为命名约定 表 账户主键 ID 相对 表 账户主键 AccountId 在我见过的实现中 它似乎分为 50 50 左右 每种方法的优点和缺点是什么 跟进 在我的数据库中使用一
  • SQL SERVER 中的排序依据和大小写

    我需要在存储过程中按功能排序 一个值被发布到网络服务 并且基于该值我必须以某种方式对结果进行排序 即 当 ColName 按 ColName 发布订单时 当 ColName2 由 ColName2 发布订单时 我正在研究使用 Case 但出
  • 表名搜索

    我使用以下命令在特定数据库的存储过程中搜索字符串 USE DBname SELECT Name FROM sys procedures WHERE OBJECT DEFINITION OBJECT ID LIKE xxx 修改上面的内容是否
  • 无法在 SSIS 2012 上使用敏感项目参数

    在 SSIS 2012 中 我尝试对 Oracle 的 OLEDB 连接使用敏感项目参数 它与 Sensitive 属性设置为完美配合FALSE 在项目参数设计器中 但我不希望密码像那样可见 一旦我将敏感属性设置为TRUE并尝试执行我的包
  • 使用 Boto3 进行 IAM 身份验证的 SQLAlchemy 可刷新凭证

    我使用 Boto3 生成的身份验证令牌通过 Sqlalchemy 连接到 Amazon RDS self client boto3 client rds region name eu central 1 self token self cl
  • 限制 SQL Server 连接到特定 IP 地址

    我想将 SQL Server 实例的连接限制为特定 IP 地址 我想阻止来自除特定列表之外的任何 IP 地址的任何连接 这是可以在 SQL Server 实例或数据库中配置的东西吗 听起来像是你会使用Windows防火墙 http tech
  • 如何使用 DateTime 执行 SQL NOT NULL?

    一个人如何处理DateTime with a NOT NULL 我想做这样的事情 SELECT FROM someTable WHERE thisDateTime IS NOT NULL But how 嗯 它有效吗 我刚刚测试过 Obje

随机推荐