加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 改变列SQL的DEFAULT约束

发布时间:2021-02-27 12:25:26 所属栏目:MsSql教程 来源:网络整理
导读:我有一个用于创建表的SQL脚本,我希望除了几列之外的所有列的默认值为“”其他列需要整数默认值为0 以下创建表.删除了一些列,因为有很多列 CREATE TABLE [dbo].[PMIPatients]([PID] [varchar](30) NOT NULL,[PatientFirstName] [varchar](30) NULL,[Patient

我有一个用于创建表的SQL脚本,我希望除了几列之外的所有列的默认值为“”其他列需要整数默认值为0

以下创建表.删除了一些列,因为有很多列

CREATE TABLE [dbo].[PMIPatients]
(
[PID] [varchar](30) NOT NULL,[PatientFirstName] [varchar](30) NULL,[PatientLastName] [varchar](30) NULL,[PatientDOB] [varchar](30) NULL,[PatientDoctor] [varchar](30) NULL,[PatientDiet] [varchar](50) NULL,[PatientFallRiskLevel] [int] NULL,[BedId] [int] NULL,[BedDisplayInfo] TEXT NOT NULL DEFAULT ''
CONSTRAINT [PK_HL7Patient] PRIMARY KEY CLUSTERED 
([PID] ASC) WITH (PAD_INDEX  = OFF,STATISTICS_NORECOMPUTE  = OFF,IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS  = ON,ALLOW_PAGE_LOCKS  = ON)
ON [PRIMARY]
) 
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

我希望在所选列上设置不同的默认值,以下代码不起作用,因为它表示已经存在默认约束集.所以我认为我必须首先放弃约束.

ALTER TABLE [dbo].[PMIPatients] ADD  
DEFAULT ((0)) 
FOR [PatientFallRiskLevel]

http://www.w3schools.com/sql/sql_default.asp说跟随代码应该能够像这样删除DEFAULT

ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT

但我在DEFAULT上收到语法错误

如何更改/删除特定列的DEFAULT约束

解决方法

添加默认值时,应使用约束的名称.这样,您可以稍后通过名称引用这些约束.
ALTER TABLE [dbo].[PMIPatients] ADD CONSTRAINT [PatientFallRiskLevel_Default] DEFAULT ((0)) FOR PatientFallRiskLevel

然后你可以使用:

ALTER TABLE [dbo].[PMIPatients] DROP CONSTRAINT [PatientFallRiskLevel_Default]

(编辑:PHP编程网 - 黄冈站长网)

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

    推荐文章
      热点阅读