为 Azure 弹性池数据库设置自定义时区

Setup custom time zone for azure elastic pool database

寻找有关如何为 Azure 弹性池数据库设置自定义时区的解决方案,Azure 弹性池数据库的默认时区 UTC,如何修改默认时区

  1. 如何为弹性池设置IST时区?

  2. 弹性池中的所有数据库都会使用弹性池时区,还是需要为每个数据库单独设置时区?

    如果是,如何修改数据库弹性池数据库的默认时区?

  3. 如何分别控制Azure弹性池数据库中每个数据库的数据库大小?

您需要使用 AT TIME ZONE 将 UTC 时间转换为印度标准时间。请参阅下面的示例:

SELECT SYSDATETIMEOFFSET() , CAST(SYSDATETIMEOFFSET()  AT TIME ZONE 'India Standard Time' as datetime);  

您可以在每个数据库上为此创建一个函数。使用弹性作业在每个数据库上创建函数。

CREATE FUNCTION dReturnDate( @dFecha as datetime) returns DATETIME
AS
BEGIN

DECLARE @D AS datetimeoffset

SET @D = CONVERT(datetimeoffset, @Dfecha) AT TIME ZONE 'India Standard Time'

RETURN CONVERT(datetime, @D);

END

关于大小,您无法单独控制每个数据库的大小,DTU 也是如此。您可以控制池的大小。

PS C:\>Set-AzureRmSqlDatabaseElasticPool -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -ElasticPoolName "ElasticPool01" -StorageMB 209715