|
|
 |
专题栏目 |
 |
 |
相关文章 |
 |
|
|
|
|
 |
VB.NET 数据库查询 [SQL字符串的生成] |
热 |
|
| VB.NET 数据库查询 [SQL字符串的生成] |
|
作者:allenle 文章来源:不详 点击数: 更新时间:2007-11-14 12:58:33  |
|
---------SQL生成---------- 任务是当用户以逗号来分隔查询的条件,的多条件查询,使用IN(x,y),但是当在数据库(ACCESS)对应的字段是字符型是就会出现错误,那是当然的!如果是IN(''''x'''',''''y'''')就没有问题! 下面的代码就是对字符串的操作,返回 ''''x'''',''''y''''。
''''-----接受要处理的字符串------- Function Tool_disTest(ByVal TextBefore As String) Dim TextAfter() As String Dim intNum, intTextLen, k, i As Integer intNum = 1 intTextLen = Len(TextBefore) ''''--------计算有多少的查询条件-------- For i = 1 To intTextLen If Mid(TextBefore, i, 1) = "," Then intNum = intNum + 1 End If Next ''''----------------------------------- ReDim TextAfter(intNum) k = 1 ''''--------把每个条件放到数组里--------- For i = 1 To intTextLen If Mid(TextBefore, i, 1) = "," Then k += 1 Else TextAfter(k) = TextAfter(k) & Mid(TextBefore, i, 1) End If Next ''''---------------------- Dim strTemp As String ''''--------为每一个条件加上''''''''---------- For i = 1 To intNum strTemp = TextAfter(i) TextAfter(i) = "''''" & strTemp & "''''" Next ''''---------------------- strTemp = "" ''''------添加分隔条件用的","------ For i = 1 To intNum strTemp = strTemp & TextAfter(i) & "," Next ''''------------------ ''''------去除最后一个,------ strTemp = Mid(strTemp, 1, Len(strTemp) - 1) ''''------------------- Return strTemp End Function
最后在SQLServer中又试了试,发现SQLServer查询的时候用IN(x,y)来查询字符型是OK的,(SQLServer就是比ACCESS强点 ,呵呵) ---------end-------
|
|
| 文章录入:mintao 责任编辑:mintao |
|
|
上一篇文章: SQL SERVER日志清除的两种方法 下一篇文章: PL/SQL小技巧一个:在子类中怎么调用父类被重载的方法 |
|
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网] |
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| |
|
|
|
|