| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1955 人关注过本帖
标题:求救:在ASP中SQL的语句中如何来截取字符串
只看楼主 加入收藏
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
结帖率:79.38%
收藏
 问题点数:0 回复次数:8 
求救:在ASP中SQL的语句中如何来截取字符串
StrSQL = "DELETE FROM 运货商 WHERE 电话 = '&"left(电话,4)=0571&"'"
 我是要把电话号码前面是0571的人都删除,上面的语句为什么程序不能通过?
错误类型:
Microsoft VBScript 编译器错误 (0x800A0401)
语句未结束
/wuf55.asp, line 6, column 40
StrSQL = "DELETE FROM 运货商 WHERE 电话 = '&"left(电话,4)=0571&"'"
搜索更多相关主题的帖子: SQL 语句 Microsoft ASP 字符 
2008-05-18 15:43
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
StrSQL = "DELETE FROM 运货商 WHERE 电话 Like '0571%'"
楼主应该学习一下SQL中的模糊查询技巧,SQL中一般像楼主的查询都是使用模糊查询的方法来实现,而不是截取字符串。
http://www.kingsnet.biz/Article/database/application/200804/8882.html
2008-05-18 15:48
rjbcxhc
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2008-5-17
收藏
得分:0 
顶!!
2008-05-18 16:00
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
楼主的代码从语法上也是说不通的。

楼主要在SQL语句中截取字符串——但是引用的left函数却是VBScript的函数,这样的SQL语句是写不出来的。而且,语句未结束
2008-05-18 16:35
tianyu123
Rank: 1
等 级:新手上路
威 望:2
帖 子:576
专家分:0
注 册:2007-8-26
收藏
得分:0 
应该这样写
StrSQL="Delete from 运货商 where left(电话,4)='0571'"

改变一切,须从改变观念开始!
2008-05-18 17:30
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
嗯,要注意楼上代码里的Left是在数据库引擎中调用的,和VBScript里的Left不是完全一样的Left。所以,VBScript里定义的自定义函数不能用于SQL语句。
2008-05-18 20:18
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
到底如何?有一个权威讲法?
2008-05-20 16:50
feelingxj
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2008-4-23
收藏
得分:0 
不能完全同意版主的解释,版主是用了模糊查询,但楼主的意思是用LEFT。
StrSQL = "DELETE FROM 运货商 WHERE 电话 = '&"left(电话,4)=0571&"'"
可以这样:
StrSQL = "DELETE FROM 运货商 WHERE Left(电话,4) = '"&0571&"'"
2008-05-20 23:53
feelingxj
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2008-4-23
收藏
得分:0 
以下摘自SQLSERVER帮助,应该是比较权威的。建议楼主SQL语法问题可以查阅相关帮助。
LEFT
返回从字符串左边开始指定个数的字符。

语法
LEFT ( character_expression , integer_expression )

参数
character_expression

字符或二进制数据表达式。character_expression 可以是常量、变量或列。character_expression 必须是可以隐式地转换为 varchar 的数据类型。否则,请使用 CAST 函数显式转换 character_expression。

integer_expression

是正整数。如果 integer_expression 为负,则返回空字符串。

返回类型
varchar
2008-05-20 23:54
快速回复:求救:在ASP中SQL的语句中如何来截取字符串
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017634 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved