解决SQLserver在给表表插入新的字段,提示错误alter 不允许将插入字段设置为NOT null

错误提示:ALTER TABLE 只允许添加满足下述条件的列: 列可以包含 Null 值;或者列具有指定的 DEFAULT 定义;或者要添加的列是标识列或时间戳列;或者,如果前几个条件均未满足,则表必须为空以允许添加此列。不能将列"achievementl"添加到非空表"StudentInfo"中,因为它不满足上述条件。

解决办法:

1.先忽悠SQLserver编辑器,他不允许你将插入的字段设置为not null,你就先把它设置为not。

执行你的插入语句,成功

2.向你新的插入的字段插入数据

UPDATE (更新)dbo.StudentInfo(表名) SET(设置) achievementl(字段名) =1(根据数据类型赋予相应值)

3.修改插入字段的数据类型和属性值

ALTER(修改) TABLE  dbo.StudentInfo(表名) ALTER COLUMN (用于改变表中某列的数据类型)achievementl(列名) NVARCHAR(20) (数据类型)NOT NULL(属性值)

你只要按照前两个步骤先忽悠进来,来到第三步进行需要修改或更新列操作,该列就任你摆布了想怎么搞就怎么搞,因为我需要用 int型,只是为了在 StudentInfo插入新的一列 ach....tl。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值