在打开数据库时,一般是通过ODBC来连接数据库,你这里面是直接打开数据库,要提供一个UID,PASSWORD,这里指的是访问数据库的用户和口令,如果没有的话,就不能连接数据库,可以在ODBC面板中建立一个用户DSN,设为TEST,用户与口令都无,,则打开数据库代码如下所示:
    dim gv_db as ADODB.Connection
    dim gv_rst as ADODB.Recordset
    Dim strSql As String
    strSql = "Provider=MSDASQL.1;Extended Properties='DSN=TEST;UID=sa;PWD=;WSID=ZZH;DATABASE=TEST"
    Set GV_db = New ADODB.Connection
    GV_db.Open strSql
    Set GV_rst = New ADODB.Recordset
    GV_rst.CursorLocation = adUseClient
    GF_ConnectDatabase = True

解决方案 »

  1.   

    如果你的程序没写错的话,下面这句写错了:
    Set rs = db.OpenRecordset("select * from userlist where username='& txtusername.text &'", dbOpenDynaset)
    应该是
    Set rs = db.OpenRecordset("select * from userlist where username='" & txtusername.text &"'", dbOpenDynaset)
    少了引号,查找的是username为&txtusername.txt&的人,当然无此用户了
    另外注意:如果txtusername.text中有'的话,要触发错误,所以,最好有”代替’,
    应该是:
    Set rs = db.OpenRecordset("select * from userlist where username=" &  chr(34) & txtusername.text & chr(34), dbOpenDynaset)