加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

表创建时sql – IDENTITY NOT NULL

发布时间:2020-12-12 08:25:49 所属栏目:MsSql教程 来源:网络整理
导读:任何人都可以告诉我表创建时的指令IDENTITY NOT NULL是否是冗余的?我的意思是,通过消息来判断 DEFAULT或NULL不允许作为显式标识值. 我会说,声明为IDENTITY的任何列都隐式也被声明为NOT NULL,但我想确保.任何人都可以确认吗? 非常感谢你. 解决方法 SQL Serve
任何人都可以告诉我表创建时的指令IDENTITY NOT NULL是否是冗余的?我的意思是,通过消息来判断

DEFAULT或NULL不允许作为显式标识值.

我会说,声明为IDENTITY的任何列都隐式也被声明为NOT NULL,但我想确保.任何人都可以确认吗?

非常感谢你.

解决方法

SQL Server自动添加NOT NULL约束到标识列,尽管他在创建表时没有说明

请考虑下表脚本

create table test(id int identity(1,1),name varchar(1000))

现在从Management Studio生成表的脚本.它生成脚本为

CREATE TABLE [dbo].[test](
    [id] [int] IDENTITY(1,1) NOT NULL,[name] [varchar](1000) NULL
) ON [PRIMARY]

Eventhough NOT NULL约束未在表脚本中指定,默认情况下会添加.标识列永远不会为空.所以NOT NULL约束是默认的

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读