哪里有误

来源:百度知道 编辑:UC知道 时间:2024/06/23 20:31:47
这里的程序想实现这样的功能:把字符串中的相同字符只显示一遍,没有重复的同样显示#include "stdio.h"
#include"string.h"
void main()
{
int i,j;
char a[]="abaccafnbbatym";
int b[26];clrscr();
for(i=0;i<strlen(a);i++)
b[a[i]-'a']++; getch();i=0;
while(b[i]!=0)
{
printf("%c",i+97);i++;
} getch();
}!

LZ好,问题出在判断用户名是否已经被占用
set rs=server.CreateObject("adodb.recordset")
sql ="Select * from kw_user where username='"&userid&"'"
Rs.CursorLocation = 3 '加入这句
rs.open sql,conn,1,3
if rs.recordcount>=1 then
errma "注册没有成功","用户名已经被占用!"
response.End()
end if
---------------------------------------------------------
通常人们使用以下两种方法来执行SQL语句:
Set Rs=Conn.Execute(SqlStr)

Set Rs=Server.CreateObject(“ADODB.RecordSet“)
Rs.Open SqlStr,Conn,CursorType,LockType

(RecordSet对象方法请看这里)

由于默认的记录集游标是服务器游标,
Rs.CursorLocation = adUseServer
所以返回Rs.RecordCount=-1,
应该把服务器游标改为客户端游标,
Rs.CursorLocation = adUseClient
Rs.Open SqlStr,Conn,CursorType,LockType

所以 Rs.CursorLocation = 3 就可以解决这个问题了,要放在OPNE 的前面!

-------------------------------------------------------------
建议使用
if not rs.eof then