|
主题: asp数据类型转换求教
|
 liangzn28
职务:普通成员
等级:1
金币:0.0
发贴:60
注册:2005/10/14 11:55:43
|
#12005/11/4 8:26:18
大虾们有用过ASP里面的CInt(),CStr()之内的转换函数吗? 下面我有几个函数请帮忙看看。 我在数据库表里面的UserID的类型是“自动编号” 第一种查询并输出 <% Dim rs,strSql,a a=1 strSql="select * From [user] where UserID=1" Set rs=db.Execute(strSql) response.Write(rs("UserName")) %> 如果在查询语句strSql="select * From [user] where UserID=1"里面直接以1为条件的话就可以正常 输出数据库里面的输出UserName字段值。
第二种查询并输出 <% Dim rs,strSql,a a=1 strSql="select * From [user] where UserID='"&CInt(a)&"'" Set rs=db.Execute(strSql) response.Write(rs("UserName")) %> 如果把1赋值给变量a,然后以a为查询语句条件进行查询就会出现下面错误: Microsoft JET Database Engine (0x80040E07) 标准表达式中数据类型不匹配。 /one/index.asp, 第 43 行
于是我就试着把a=1写成a=CInt(1),也是有错误!
上面的问题请大虾们指教吧!呵呵!
|
 浮尘
职务:普通成员
等级:3
金币:7.0
发贴:1258
注册:2001/11/19 12:41:09
|
#22005/11/4 8:44:14
你的a本身就是整数,还CInt做什么?
|
 缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
注册:2004/1/14 19:14:47
|
#32005/11/4 9:26:17
strSql="select * From [user] where UserID='"&CInt(a)&"'" 这里只是进行字符串连接.无需考虑什么整形字符串. 直接 strSql="select * From [user] where UserID="&a
你要转换也是应该把整形转换成字符串 还有,为什么你要加单引号
|
 蓝鲸
职务:版主
等级:5
金币:42.1
发贴:2614
注册:2001/12/20 15:57:57
|
#42005/11/4 9:39:18
&连接符是连接字符串的,应用可以用 sql & cstr(a)
非常大鱼
|
 缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
注册:2004/1/14 19:14:47
|
#52005/11/4 16:06:44
在做这样的字符串连接的时候 strSql="select * From [user] where UserID="&a
你不应该去考虑引号里面的内容.你只要知道他们是字符串,在你眼里,应该是这样的形式: "███████████████" & a
当构建成了一个sql语句的时候,你再考虑字符串整形之类的问题
|