社区
MS-SQL Server
帖子详情
SQL SERVER 2000中如何实现正则表达式约束
topglorylines
2008-01-06 03:41:51
比如我要建一个字段存放电话号码,那约束应该怎么写,用正则表达式似乎SQL SERVER 2000不支持,但是要写成:
[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]又太麻烦,有没办法?
...全文
434
6
打赏
收藏
SQL SERVER 2000中如何实现正则表达式约束
比如我要建一个字段存放电话号码,那约束应该怎么写,用正则表达式似乎SQL SERVER 2000不支持,但是要写成: [0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]又太麻烦,有没办法?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zjcxc
元老
2008-01-07
打赏
举报
回复
to 楼上, 我只是照楼主的规则, 并不考虑实际有多少种情况
如果要考虑,那电话号码不同的地方还有不同的长度, 这样下去就没完了
JL99000
2008-01-07
打赏
举报
回复
1 楼的限制没有达到楼主的要求, 至少还应该包括 LEN(col) = 13 AND SUBSTRING(col, 5, 1) = '-'
sql 不支持正则表达式, 所以实现楼主的那种约束确实比较麻烦
---
SUBSTRING(col, 5, 1) = '-'
这个也不行啊
有的区号是三位的010
楼主:
比较麻烦
为什么不在应用层控制呢,不必把这个在数据库里实现啊
zjcxc
元老
2008-01-07
打赏
举报
回复
1 楼的限制没有达到楼主的要求, 至少还应该包括 LEN(col) = 13 AND SUBSTRING(col, 5, 1) = '-'
sql 不支持正则表达式, 所以实现楼主的那种约束确实比较麻烦
topglorylines
2008-01-07
打赏
举报
回复
谢谢大家的回复,看来在数据库里加这些约束是比较麻烦那了,只能在外层代码中想办法了。
正牌风哥
2008-01-06
打赏
举报
回复
除0-9/-外其它字符不接受
正牌风哥
2008-01-06
打赏
举报
回复
create table T(Col nvarchar(10) check(Col not like '%[^0-9-]%'))
利用
正则表达式
对
SQL
解释的方法
一种通过
正则表达式
进行
SQL
解释的方法.举例说明他的用法.分析源码等等
利用CLR
实现
SQL
Server
2005复杂字符串格式的验证.pdf
利用CLR
实现
SQL
Server
2005复杂字符串格式的验证.pdf
net
中
sql
注入式攻击与防范秘籍
sql
注入式攻击与防范秘籍
数据库原理与应用课程设计题目.pdf
数据库原理与应用课程设计题目.pdf
【本科期末复习】数据库复习B
19计算机 《数据库系统》模拟考试试卷.doc
MS-SQL Server
34,837
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章