SQL添加约束出错
altertable号码纪录addconstraintck_手机号码check(手机号码like'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][...
alter table 号码纪录 add constraint ck_手机号码 check(手机号码 like'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
出错提示:
服务器: 消息 547,级别 16,状态 1,行 1
ALTER TABLE 语句与 COLUMN CHECK 约束 'ck_手机号码' 冲突。该冲突发生于数据库 'nice',表 '号码纪录', column '手机号码'。
我哪出错了??请教 展开
出错提示:
服务器: 消息 547,级别 16,状态 1,行 1
ALTER TABLE 语句与 COLUMN CHECK 约束 'ck_手机号码' 冲突。该冲突发生于数据库 'nice',表 '号码纪录', column '手机号码'。
我哪出错了??请教 展开
2个回答
展开全部
你的【手机号码】字段中有不符合【你建的约束的数据】,把这样的数据删掉再建就可以了,为了方便起见。
1、先把数据转存到另外一个表中:
select * into tmp from 号码纪录;
2、删除原表数据
truncte table 号码纪录;
3、增加check约束
alter table 号码纪录 add constraint ck_手机号码 check(手机号码 like'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]');
4、把符合条件的数据导回
insert into 号码纪录 select * from tmp where tmp.手机号码 like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]';
5、删除临时表
drop table tmp;
---
以上,希望对你有所帮助。
1、先把数据转存到另外一个表中:
select * into tmp from 号码纪录;
2、删除原表数据
truncte table 号码纪录;
3、增加check约束
alter table 号码纪录 add constraint ck_手机号码 check(手机号码 like'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]');
4、把符合条件的数据导回
insert into 号码纪录 select * from tmp where tmp.手机号码 like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]';
5、删除临时表
drop table tmp;
---
以上,希望对你有所帮助。
网易云信
2023-12-06 广告
2023-12-06 广告
UIkit是一套轻量级、模块化且易于使用的开源UI组件库,由YOOtheme团队开发。它提供了丰富的界面元素,包括按钮、表单、表格、对话框、滑块、下拉菜单、选项卡等等,适用于各种类型的网站和应用程序。UIkit还支持响应式设计,可以根据不同...
点击进入详情页
本回答由网易云信提供
展开全部
CREATE TABLE TPhoneInfo
(
FID int primary key identity(1,1),
FName nvarchar(40),
FPhoneNum char(11) not null CHECK(FPhoneNum LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'),
)
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '张三','123456789AB'
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '李四','01234567891'
--我顺便也学习下约束,嘿嘿
--删除约束
--sp_helpconstraint TPhoneInfo
ALTER TABLE TPhoneInfo DROP CONSTRAINT PK__TPhoneInfo__65AF35AA
--插入错误值
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '张三','123456789AB'
--重新创建一个约束
--先要删除不受约束数据
DELETE FROM TPhoneInfo
ALTER TABLE TPhoneInfo ADD CONSTRAINT chk_PhoneNum CHECK (FPhoneNum LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '张三','123456789AB'
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '李四','01234567891'
(
FID int primary key identity(1,1),
FName nvarchar(40),
FPhoneNum char(11) not null CHECK(FPhoneNum LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'),
)
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '张三','123456789AB'
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '李四','01234567891'
--我顺便也学习下约束,嘿嘿
--删除约束
--sp_helpconstraint TPhoneInfo
ALTER TABLE TPhoneInfo DROP CONSTRAINT PK__TPhoneInfo__65AF35AA
--插入错误值
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '张三','123456789AB'
--重新创建一个约束
--先要删除不受约束数据
DELETE FROM TPhoneInfo
ALTER TABLE TPhoneInfo ADD CONSTRAINT chk_PhoneNum CHECK (FPhoneNum LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '张三','123456789AB'
INSERT INTO TPhoneInfo(FName,FPhoneNum)
SELECT '李四','01234567891'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询