SQL中创建一个表之后如何添加默认约束和非空约束

列如创建了一个表:createtablelovo(namevarchar(20))之后如何给他添加非空约束和默认约束?我是这样的:添加非空约束:altertablelov... 列如创建了一个表:
create table lovo(
name varchar(20)
)
之后如何给他添加非空约束和默认约束?

我是这样的:
添加非空约束:alter table lovo
add constraint name_not_null check(name is not null)
不知道对不对,虽然显示命令成功 但是表中列好象没变,在企业管理器中 仍然可以是空值,
而这样: alter table lovo alter column name not null为什么又不对呢?
添加默认约束:
alter table lovo alter column name add constraint name_default default('zhouqiang')
这样为什么不对呢?显示在关键字 'constraint' 附近有语法错误。
问题有点多请谅解哈 呵呵
谢谢大家啊 我的问题已经解决啦 还有个问题就是我看有些书上用的是 alter table lovo modify name default('zhouqiang') 但是我写上去仍然不对 请问是怎么回事呢?
展开
 我来答
如意又婉丽的雪花N
2009-08-13 · TA获得超过1213个赞
知道小有建树答主
回答量:630
采纳率:0%
帮助的人:1023万
展开全部
你的语法不对,当然出错,详细语法参阅SQL联机丛书

--添加非空约束
ALTER TABLE LOVO ALTER COLUMN NAME VARCHAR(20) NOT NULL;

--添加默认约束
ALTER TABLE LOVO ADD CONSTRAINT name_default DEFAULT 'zhouqiang' FOR NAME;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华夏日长兴
推荐于2018-02-27 · TA获得超过9592个赞
知道大有可为答主
回答量:6305
采纳率:85%
帮助的人:3720万
展开全部
ALTER TABLE [dbo].[lovo] ADD CONSTRAINT [DF_lovo_name] DEFAULT ('zhouqiang') FOR [name]

alter table lovo alter column name varchar(20) not null
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sjn660877
2009-08-13 · TA获得超过2189个赞
知道小有建树答主
回答量:1669
采纳率:0%
帮助的人:1392万
展开全部
CONSTRAINT 表名 DEFAULT ('') FOR 要改的字段就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loveyurui
2009-08-13 · TA获得超过6556个赞
知道大有可为答主
回答量:2892
采纳率:33%
帮助的人:990万
展开全部
alter table lovo alter column name not null为什么又不对呢?
必须是is not null 这是规定的语法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式