如何将TimeZone作为默认值 [英] How to get TimeZone as default value
问题描述
如何使用SQL Server2012将列的默认值设置为仅时区(如印度标准时间)。
我写了一个关于这个的代码:
DECLARE @TimeZone VARCHAR(50);
EXEC MASTER.dbo.xp_regread'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\TimeZoneInformation','TimeZoneKeyName ',@ TimeZone OUT;
SELECT @TimeZone
但是当ctreate表时如何将其设置为默认值?
使用表创建脚本声明字符串,您可以使用@TimeZone值将该表脚本构建为列的默认值。然后使用
执行该动态sql字符串EXECUTE ( @ SQLStatement )
您好,您不能为中的列设置默认值创建脚本
。首先创建表
,然后使用更改脚本
,您可以根据需要为特定列设置默认值或绑定。请检查此示例:
DECLARE @ TimeZone VARCHAR ( 50 );
EXEC MASTER.dbo.xp_regread ' HKEY_LOCAL_MACHINE ',' SYSTEM \ CurrentControlSet \Control\TimeZoneInformation',' TimeZoneKeyName', @ TimeZone OUT;
选择 ' 创建表[dbo]。 [测试](
[Id] [int] IDENTITY(1,1)NOT NULL,
[Column1] [varchar](50)NOT NULL,
[Column2] [varchar]( 50)NOT NULL)
GO
ALTER TABLE [dbo]。[Test] ADD CONSTRAINT [DF_SomeName] DEFAULT(N''' + @ TimeZone + ' '')FOR [Column2]
GO'
它将会创建以下脚本:
创建 表 [dbo]。[测试](
[Id] [ int ] IDENTITY ( 1 , 1 ) NOT NULL ,
[Column1] [ varchar ]( 50 )NOT NULL ,
[Column2] [ varchar ]( 50 ) NOT NULL )
GO
ALTER 表 [dbo]。[测试] ADD CONSTRAINT [DF_SomeName] DEFAULT (N ' 印度标准时间') FOR [Column2]
GO
我希望这会对你有所帮助。 :)
How set default value of a column as only timezone(like "Indian Standard Time") using SQL Server2012.
I have write a code about that this is :
DECLARE @TimeZone VARCHAR(50);
EXEC MASTER.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\TimeZoneInformation','TimeZoneKeyName',@TimeZone OUT;
SELECT @TimeZone
But how to set it as default value when ctreate a table ??
declare string with table create script, you can use @TimeZone value to build that table script as default value for the column. then execute that dynamic sql string using
EXECUTE(@SQLStatement)
Hi, You can not set Default Value for column inCreate Script
. FirstCreate Table
and then usingAlter Script
you can set default value or bindings for specific column as you require. Please check this example:
DECLARE @TimeZone VARCHAR(50); EXEC MASTER.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\TimeZoneInformation','TimeZoneKeyName',@TimeZone OUT; Select 'Create Table [dbo].[Test] ( [Id] [int] IDENTITY(1,1) NOT NULL, [Column1] [varchar] (50) NOT NULL, [Column2] [varchar] (50) NOT NULL) GO ALTER TABLE [dbo].[Test] ADD CONSTRAINT [DF_SomeName] DEFAULT (N'''+@TimeZone+''') FOR [Column2] GO'
It will create following script :
Create Table [dbo].[Test] ( [Id] [int] IDENTITY(1,1) NOT NULL, [Column1] [varchar] (50) NOT NULL, [Column2] [varchar] (50) NOT NULL) GO ALTER TABLE [dbo].[Test] ADD CONSTRAINT [DF_SomeName] DEFAULT (N'India Standard Time') FOR [Column2] GO
I hope this will help you. :)
这篇关于如何将TimeZone作为默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!