怀孕一深一浅什么意思:新手求助。ASP问题

来源:百度文库 编辑:神马品牌网 时间:2024/05/02 02:42:42
我用ASP做一个学生信息查询系统。
学生输入学号就返回学生的所有信息。
但记录集中筛选我设置为学号=表单变量时,无论无何都查不出结果;当筛选设置为学号包含表单变量时,所有学生的信息都列了出来,而学号是唯一的。请问问题出在什么地方?
不是。比如我输入123,那么101-150这50个学号都出来了
2楼的说得也不对
我的查询语句跟你写的是一样的

学号确实是字符型的,因为学号的第一位都是0。

Set result = Server.CreateObject("ADODB.Recordset")
result.ActiveConnection = MM_search_STRING
result.Source = "SELECT * FROM xuexi WHERE 学号 = '" + Replace(result__MMColParam, "'", "''") + "'"
result.CursorType = 0
result.CursorLocation = 2
result.LockType = 1
result.Open()

result_numRows = 0

你数据库中的学号的数据类型为什么,千万不能是字符类型。必须是能够计算的。因为在你搜索的时候已经进行了比较,相当于进行了计算。检查一个吧!

那么,你的SQL语句中where后的学号用一个参数吧!因为学号这一字段必须为字符串类型。所以必须设法将它变成字符串类型的。否则,在asp中学号默认成了数字类型的了。


例如你的学号里有1,你的结果把所有学号里带1的都打印出来了吧
呵呵
JSP下我能解决
ASP不会

类型问题可能性大!

调试法:

response.write sql '打印传值后实际SQL内容;
response.end () '终止应用输出;

你可以:
1.查询一下数据库里的“学号”数据类型是否为字符型。
2.不要用模糊查询“like”.
3.将数据库里的各列数据类型重新规划一下,对你以后写大型程序是有帮助的。

你的查询语句有问题
学号如果是 数字类型的话
就这样
sql="select * from 表名 where 学号="&request.form("表单内容")

三楼的,如果按你这样写的话,输入10 不就也把100这个学号也查出来了啊??
like 是模糊查找耶~~

字段设置为 数据的话 用 =
字段为文本的话 最好用 LIKE