如何用sql语句添加非空列?

如何用sql语句添加非空列?,第1张

改变已有表的列字段,使用alter命令;\r\n格式:\r\nalter table 表名 add 新增字段名 字段类型 [列级约束]\r\n\r\n例如:alter table student add grade int not null (not null 属于列级约束)\r\n\r\n但可能出现以下的情况:\r\nALTER TABLE 只允许添加满足下述条件的列: 列可以包含空值;或者列具有指定的 DEFAULT 定义;或者要添加的列是标识列或时间戳列;或者,如果前几个条件均未满足,则表必须为空以允许添加此列。\r\n\r\n原因:表中原本有数据(存在很多行),在你新增加非空字段后,原来存在的行中的数据本来为空,但你又要求它非空,这样就矛盾了,所以该命名就不会执行,就会报错。\r\n\r\n解决方法:\r\n1、alter table student add grade int 不加非空约束;\r\n2、update table student set grade=60 where grade is NULL 将存在的数据行中的grade字段同一设置成60分;\r\n3、alter table student alter column grade int not null 增加非空约束;

在VBF中打开一个DBC数据库。

点表-添加-另一DBC数据库中某DBF表,注意表名称不能与已有表同名。

或者将另一数据库DFC表复制粘贴到所需路径,用上述方法添加。

你的语法不对,当然出错,详细语法参阅SQL联机丛书

--添加非空约束

ALTER TABLE LOVO ALTER COLUMN NAME VARCHAR(20) NOT NULL

--添加默认约束

ALTER TABLE LOVO ADD CONSTRAINT name_default DEFAULT 'zhouqiang' FOR NAME


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11582703.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存