简单的ASP代码 什么意思 越详细越好
发布网友
发布时间:2024-10-15 17:04
我来回答
共4个回答
热心网友
时间:2024-10-16 07:56
if sort_id<>"" then '如果sort_id不是空值
sqlwhere=sqlwhere &" and Lin_proctsort="&sort_id&"" 'sqlwhere 顾名思义 是SQL语句的条件 后面and Lin_proctsort=sort_id是增加一个搜索条件
if keyword<>"" then
sqlwhere=sqlwhere &" and Lin_cpzd1 like '%"&keyword&"%'"
这个也差不多 如果keyword不为空 一般这时站内查询时获取的关键词,那么就找Lin_cpzd1字段里包含关键词的那行数据 like '%关键词%' 这里意思就是只要这段文本内容里包含“关键词” 就算条件成立
strsql="select * from Lin_Proct where 1=1 "&sqlwhere&" order by Lin_id asc"
这段SQL语句是查询Lin_Proct表里的数据 1=1是毫无意义的 但是是恒等式 目的就是为了前面语句里有个and 因为and 左右都必须有条件存在
当然条件就是上面两个语句
然后根据lin_id来正序排列 (从小到大)
热心网友
时间:2024-10-16 07:56
第一句判断变量sort_id是否为空,如果不为空则把lin_proctsort=sort_id添加进sql的查询条件
第二句判断是否存在keyword关键字 如果不为空则把lin_cpzd1字段以keyword为匹配字符进行模糊查询(like '%%'是模糊查询)
最后strsql为总结上两个判断以后组成的SQL查询语句.
order by lin_id asc则是为查询结果排序,以LIN_ID升序(从小到大)排列结果.
他在strsql中的where 后面加上了 1=1是为了防止 以上两个判断都为空时,sqlwhere变量未赋值则strsql中where判断没有子句出错的情况.
热心网友
时间:2024-10-16 07:57
从以上3句可以大概判断出sqlwhere之前已经有值了。
因为第一行后半段sqlwhere=sqlwhere &" and Lin_proctsort="&sort_id&""
sqlwhere是在原来的基础上又进行了二次查询
第一行是:如果sort_id不等于空(即有值)则。sqlwhere=sqlwhere(以上的)并且Lin_proctsort的值等于sort_id。
同样
第二行是:如果keyword不等于空(即有值)则。sqlwhere=sqlwhere(上一个)并且Lin_cpzd1 中包含变量keyword。
第三行是sql语句并赋值给strsql。
查询 Lin_Proct 表 条件是 1=1(必然条件无实际意义) 并且符合sqlwhere(上一个) 并且按照Lin_id 升序排列
热心网友
时间:2024-10-16 07:57
这些只不过是SQL语句的组合判断
这些具体的作用,还得结合里面的变量在整个功能中是什么作用