由于要验证某栏位的内容是否符合一定要求,最好的办法是用正则表达式,因为SQL Server 2000里面还没找到可以try catch的好办法,所以就找看能否加正则表达式,结果还真被我都搜索到了

验证的代码就不贴了,懒惰,呵呵

 1SET ANSI_NULLS ON
 2GO
 3SET QUOTED_IDENTIFIER ON
 4GO
 5CREATE FUNCTION [dbo].[find_regular_expression]
 6 (
 7  @source varchar(5000),   --需要匹配的源字符串
 8  @regexp varchar(1000),  --正则表达式
 9  @ignorecase bit = 0  --是否区分大小写,默认为false
10 )
11RETURNS bit  --返回结果0-false,1-true
12AS
13 BEGIN
14
15 --0(成功)或非零数字(失败),是由 OLE 自动化对象返回的 HRESULT 的整数值。
16  DECLARE @hr integer 
17
18--用于保存返回的对象令牌,以便之后对该对象进行操作
19  DECLARE @objRegExp integer   DECLARE @objMatches integer
20
21--保存结果
22  DECLARE @results bit
23  
24/**//*
25创建 OLE 对象实例,只有 sysadmin 固定服务器角色的成员才能执行 sp_OACreate,并确定机器中有VBScript.RegExp类库
26*/
27  EXEC @hr = sp_OACreate 'VBScript.RegExp', @objRegExp OUTPUT
28  IF @hr <> 0 BEGIN
29   SET @results = 0
30   RETURN @results
31  END
32/**//*
33以下三个分别是设置新建对象的三个属性。下面是'VBScript.RegExp'中常用的属性举例:
34    Dim regEx,Match,Matches         '建立变量。
35    Set regEx = New RegExp         '建立一般表达式。
36    regEx.Pattern= patrn         '设置模式。
37    regEx.IgnoreCase = True         '设置是否区分大小写。
38    regEx.Global=True                             '设置全局可用性。
39    set Matches=regEx.Execute(string)             '重复匹配集合
40    RegExpTest = regEx.Execute(strng)      '执行搜索。
41   for each match in matches                    '重复匹配集合
42   RetStr=RetStr &"Match found at position "
43   RetStr=RetStr&Match.FirstIndex&".Match Value is '"
44   RetStr=RetStr&Match.Value&"'."&vbCRLF Next
45   RegExpTest=RetStr
46
47*/
48  EXEC @hr = sp_OASetProperty @objRegExp, 'Pattern', @regexp
49  IF @hr <> 0 BEGIN
50   SET @results = 0
51   RETURN @results
52  END
53  EXEC @hr = sp_OASetProperty @objRegExp, 'Global', false
54  IF @hr <> 0 BEGIN
55   SET @results = 0
56   RETURN @results
57  END
58  EXEC @hr = sp_OASetProperty @objRegExp, 'IgnoreCase', @ignorecase
59  IF @hr <> 0 BEGIN
60   SET @results = 0
61   RETURN @results
62  END 
63--调用对象方法
64  EXEC @hr = sp_OAMethod @objRegExp, 'Test', @results OUTPUT, @source
65  IF @hr <> 0 BEGIN
66   SET @results = 0
67   RETURN @results
68  END
69--释放已创建的 OLE 对象
70  EXEC @hr = sp_OADestroy @objRegExp
71  IF @hr <> 0 BEGIN
72   SET @results = 0
73   RETURN @results
74  END
75 RETURN @results
76 END
77

转载于:https://www.cnblogs.com/forward/archive/2008/01/23/1050061.html

T SQL + 正则表达式相关推荐

  1. Git/SQL/正则表达式练习平台

    Git/SQL/正则表达式 文章目录 Git/SQL/正则表达式 一.练习 Git 二.练习正则表达式 三.练习 SQL 下面介绍几个平台,分别是学习 Git.SQL.正则表达式的在线练习平台. 一. ...

  2. Mysql教程(五)---SQL正则表达式

    "无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家.教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家.点这里可以跳转到教程.". 目录 ...

  3. oracle中正则表达式规则,Oracle SQL 正则表达式

    From:http://blog.sina.com.cn/s/blog_69e7b8d701012tuj.html 在oracle数据库当中有字符处理的函数,比如substr().replace()和 ...

  4. SQL正则表达式进行搜索

    基本字符匹配 select prod_name from products where prod_name regexp '.000' order by prod_name; 分析 这里使用了正则表达 ...

  5. SQL 正则表达式检索数据表中某字段值全是数字

    select COUNT(id) from biz_productall where (barcode REGEXP '[^0-9]') != 0 AND barcode != ''      AND ...

  6. SQL Server中执行正则表达式

    总体方案:写function,再执行update语句. 一.查询函数 -- ============================================= -- Author: <l ...

  7. group by是否会用到索引_平时工作中经常用到的SQL,这些你都知道吗?

    最近在公司做了几张报表,还记得刚开始要做报表的时候都快把SQL给忘光了(当时在广州休假了1个月多,在实习期间也没咋写过SQL),回到公司的第一个需求就是做报表. 于是我很不要脸地跟带我的学长说:&qu ...

  8. mysql触发器可以使用正则表达式_SQL 正则表达式及mybatis中使用正则表达式

    这篇文章主要介绍了SQL 正则表达式及mybatis中使用正则表达式的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下 mysql 提供的模式匹配的其他类型是使用扩展正则表达式. 当你对这 ...

  9. 怎么让sql查询的字段可以不出现在group分组里_在工作中常用到的SQL

    这篇文章来记录一下我曾经忘掉的group查询.join查询等一些比较实用/常用的SQL 本文主打通俗易懂,不涵盖任何优化(适合新手观看) 一.回顾group 查询 group查询就是分组查询,为什么要 ...

最新文章

  1. Gartner:预计2018年人工智能行业总价值达1.2万亿美元
  2. ERROR LNK2019:无法解析的外部的符号 _sscanf或者_vsprintf
  3. TensorFlow——基于Keras子类API的fashion-mnist数据集图像分类
  4. matlab 读取fig数据
  5. SAP Spartacus默认的货币列表currency是从源代码什么地方读取的
  6. 如何扩展分布式日志组件(Exceptionless)的日志通知?
  7. asp:dropdownlist如何去掉三角箭头_一棵悬崖三角枫的培养过程
  8. python矩阵中的冒号:
  9. python定时发送微信消息_Python3 itchat实现微信定时发送群消息的实例代码
  10. 磁带机技术的应用解析
  11. 计算机内存延迟,内存延迟有多重要?游戏性能测试说明真相:酷睿i9-9900K依然无敌...
  12. 一分钟学习静态网页制作
  13. 【贪玩巴斯】传感器与检测技术 (二)「半导体传感器基础」2021-09-30
  14. 北京同创蓝天的全景航拍技术如何?应用在哪些方面呢?
  15. RealView MDK 使用
  16. 【概率论】4-7:条件期望(Conditional Expectation)
  17. 利用python对文件夹中所有图像进行批量增强处理并保存结果
  18. 用wifi实现细粒度的人体感知——Person-in-WiFi: Fine-grained Person Perception using WiFi
  19. android的IBINDER机制
  20. IIS网站部署步骤(通过域名访问)

热门文章

  1. Linux mkdirrm命令
  2. scipy.stats
  3. 用了这个方法,您的备份数据再也不怕被勒索了(数据备份防止更改)
  4. 从零起步的数据中心规划和建设
  5. Spring学习总结(22)——spring-framework-bom解决spring的不同模块依赖版本不同问题...
  6. Java基础学习总结(66)——配置管理库typesafe.config教程
  7. 知行合一!如何做好项目经理?
  8. java架构师之路:推荐的15本书
  9. python用户登陆,Python入门基础--用户登陆
  10. 深入浅出 python epub_《机器学习从认知到实践(第2辑)(套装共3册,Python+TensorFlow)》epub+mobi+azw3...