0
CREATE TABLE [guest].[m_WORKING_HOUR_SETTING](
    [GROUP_ID] [int] NULL,
    [WORKING_START_HOUR] [varchar](10) NULL,
    [WORKING_END_HOUR] [varchar](50) NULL,
    [CREATED_TIME] [datetime] NULL CONSTRAINT [DF_WORKING_HOUR_SETTING_CREATED_TIME]  default (getutcdate()) ,
    [CREATED_BY] [int] NULL
) 

GO

当我为 datetime 数据类型列创建具有自己的默认约束名称的表时。它在关键字附近显示错误,例如 Incorrect syntax default。我尝试了自己,但我找不到错误。请帮我解决这个问题。

4

1 回答 1

0

默认被认为是一个约束,我认为你不能像这样向一列添加两个约束。

CREATE TABLE m_WORKING_HOUR_SETTING(
    GROUP_ID int NULL,
    WORKING_START_HOUR varchar(10) NULL,
    WORKING_END_HOUR varchar(30) NULL,
    CREATE_TIME datetime default getutcdate() NULL,
    CREATED_BY int NULL

)

如果您想对该列有一个命名约束来完成相同的事情,您可以创建没有默认/约束的表,然后创建一个命名默认并将其绑定到该列。

create default DF_WORKING_HOUR_SETTING_CREATED_TIME as getutcdate()

sp_bindefault DF_WORKING_HOUR_SETTING_CREATED_TIME, "guest.m_WORKING_HOUR_SETTING"

Sybase ASE 表创建

定义表的完整性约束

默认值和空值

创建默认值

于 2013-09-27T15:03:27.617 回答