怎么在sql 里对一个表的某一个字段名 做一个“第一个字符为字母”进行约束 该怎么写?

 我来答
百度网友2101fd52c
2008-11-03 · TA获得超过482个赞
知道小有建树答主
回答量:383
采纳率:0%
帮助的人:350万
展开全部
(ascii(upper([aaa])) > 64 and ascii(upper([aaa])) < 91)

企业管理器→所要操作的数据库→所要操作的表→右键点该表→点设计表→右键点 设计表的窗口→点 check约束→新建→然后在里面输入上面的话
上边的aaa是要约束的字段名
上边的那句的整体意思是:
upper 的意思是:小写转大写
ascii 的意思是:求字符串的最左边的字母的ascii码
然后判断这个码是不是在 64和91 之间
也就是 A 和Z 之间

写成语句就是:
alter table 表名
with nocheck
add constraint ck_aaa
check( (ascii(upper([aaa])) > 64 and ascii(upper([aaa])) < 91))

其中ck_aaa 是约束的名字,随便起的,你想起什么就起什么
with nocheck 就是对现有的数据不进行检查,只有新加入的数据才检查

回答完毕。

帮助别人,自己得分,巩固知识,何乐而不为!!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式