Avatar billede akr21jb Nybegynder
28. marts 2002 - 14:32 Der er 17 kommentarer og
1 løsning

sql

Jeg har følgende sql der viser en medlemsliste :

strSql = "SELECT " & strMemberTablePrefix & "MEMBERS.MEMBER_ID, " &_
    strMemberTablePrefix & "MEMBERS.M_STATUS, " &_
    strMemberTablePrefix & "MEMBERS.M_NAME, " &_
    strMemberTablePrefix & "MEMBERS.M_LEVEL, " &_
    strMemberTablePrefix & "MEMBERS.M_EMAIL, " &_
    strMemberTablePrefix & "MEMBERS.M_COUNTRY, " &_
    strMemberTablePrefix & "MEMBERS.M_HOMEPAGE, " &_
    strMemberTablePrefix & "MEMBERS.M_ICQ, " &_
    strMemberTablePrefix & "MEMBERS.M_YAHOO, " &_
    strMemberTablePrefix & "MEMBERS.M_AIM, " &_
    strMemberTablePrefix & "MEMBERS.M_TITLE, " &_
    strMemberTablePrefix & "MEMBERS.M_POSTS, " &_
    strMemberTablePrefix & "MEMBERS.M_LASTPOSTDATE, " &_
    strMemberTablePrefix & "MEMBERS.M_LASTHEREDATE, " &_
    strMemberTablePrefix & "MEMBERS.M_DATE " &_
    " FROM " & strMemberTablePrefix & "MEMBERS "

jeg vil gerne have den til at KUN vise medlemmer hvor =pb= indgår.

ala:
WHERE player LIKE '%=PB=%'

Nogen der kan klare den ?
Avatar billede coltau Juniormester
28. marts 2002 - 14:34 #1
strSql = "SELECT " & strMemberTablePrefix & "MEMBERS.MEMBER_ID, " &_
    strMemberTablePrefix & "MEMBERS.M_STATUS, " &_
    strMemberTablePrefix & "MEMBERS.M_NAME, " &_
    strMemberTablePrefix & "MEMBERS.M_LEVEL, " &_
    strMemberTablePrefix & "MEMBERS.M_EMAIL, " &_
    strMemberTablePrefix & "MEMBERS.M_COUNTRY, " &_
    strMemberTablePrefix & "MEMBERS.M_HOMEPAGE, " &_
    strMemberTablePrefix & "MEMBERS.M_ICQ, " &_
    strMemberTablePrefix & "MEMBERS.M_YAHOO, " &_
    strMemberTablePrefix & "MEMBERS.M_AIM, " &_
    strMemberTablePrefix & "MEMBERS.M_TITLE, " &_
    strMemberTablePrefix & "MEMBERS.M_POSTS, " &_
    strMemberTablePrefix & "MEMBERS.M_LASTPOSTDATE, " &_
    strMemberTablePrefix & "MEMBERS.M_LASTHEREDATE, " &_
    strMemberTablePrefix & "MEMBERS.M_DATE " &_
    " FROM " & strMemberTablePrefix & "MEMBERS where player like '%" & PB & "%'"

Hvis PB er en variable.
Avatar billede akr21jb Nybegynder
28. marts 2002 - 14:35 #2
Ups, skulle være
WHERE M_NAME LIKE '%=PB=%'
Avatar billede coltau Juniormester
28. marts 2002 - 14:35 #3
Hvis det bare er dem der indeholder bogstaverne PB skal sidste linie se sådan ud:
" FROM " & strMemberTablePrefix & "MEMBERS where player like '%PB%'"
Avatar billede akr21jb Nybegynder
28. marts 2002 - 14:36 #4
=pb= er en fast del at medlemsnavnet (et tag)
Avatar billede coltau Juniormester
28. marts 2002 - 14:37 #5
Så ændre du bare player til m_name:

" FROM " & strMemberTablePrefix & "MEMBERS where m_name like '%" & PB & "%'"
Avatar billede coltau Juniormester
28. marts 2002 - 14:37 #6
Så er det sådan:
" FROM " & strMemberTablePrefix & "MEMBERS where m_name like '%PB%'"
Avatar billede akr21jb Nybegynder
28. marts 2002 - 14:45 #7
usp så før jeg følgende fejl :

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'm_name like '%PB%' WHERE FORUM_MEMBERS.M_STATUS = 1'.
Avatar billede coltau Juniormester
28. marts 2002 - 14:56 #8
Du skrev jo ikke noget om flere kriterier. Men så skal det være sådan:

" FROM " & strMemberTablePrefix & "MEMBERS where FORUM_MEMBERS.M_STATUS = 1 and m_name like '%PB%'"
Avatar billede akr21jb Nybegynder
28. marts 2002 - 15:02 #9
sorry, det viste jeg heller ikke at der var. Koden er alt for uigennemskuelig for mig.
Og nu bliver det værre, nu får jeg følgende fejl :
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'FORUM_MEMBERS.M_STATUS = 1 and m_name like '%PB%' WHERE FORUM_MEMBERS.M_STATUS = 1'.

/danmark/faelles/forumny/klanmembers1.asp, line 239

Skal vi opgive ?  :)
Avatar billede coltau Juniormester
28. marts 2002 - 15:02 #10
Jeg skriver lige sætningen om så den er mere overskuelig.

strSql = "SELECT MEMBER_ID, M_STATUS, M_NAME, M_LEVEL, M_EMAIL, M_COUNTRY, M_HOMEPAGE, M_ICQ, M_YAHOO, M_AIM, M_TITLE, M_POSTS, M_LASTPOSTDATE, M_LASTHEREDATE, M_DATE "
strSql = strSql & "FROM " & strMemberTablePrefix & "MEMBERS "
strSql = strSql & "WHERE M_STATUS = 1 and m_name like '%PB%'"
Avatar billede coltau Juniormester
28. marts 2002 - 15:03 #11
Jeg opgiver aldrig - prøv lige ovenstående. Den virker også med forskellige tabelnavne.
Avatar billede akr21jb Nybegynder
28. marts 2002 - 15:06 #12
Nej, der bliver ved med at komme fejl. Vil det hjælpe hvis jeg sætter hele koden ind her, så du kan se sammenhængen, eller evt sende koden til dig ?

fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'FORUM_MEMBERS.M_STATUS = 1 and m_name like '%PB%' WHERE FORUM_MEMBERS.M_STATUS = 1'.

/danmark/faelles/forumny/klanmembers1.asp, line 225
Avatar billede akr21jb Nybegynder
28. marts 2002 - 15:06 #13
Jeg vil selvfølgelig gerne give flere point, hvis det er.
Avatar billede coltau Juniormester
28. marts 2002 - 15:14 #14
Prøv at vise koden her. (Hvis den ikke er for lang) eller send til ccc@post11.tele.dk

jeg kan se at det kun er en detalje.
Avatar billede akr21jb Nybegynder
28. marts 2002 - 16:11 #15
Jeg har sendt filen til dig.
Avatar billede coltau Juniormester
28. marts 2002 - 20:51 #16
Du sagde ikke noget om at sql-sætningen blev udbygget i de efterfølgende linier. Du skal tilføje en linie her:

313:            if mlev = 4 then

                                            strSql = strSql & " WHERE " & strMemberTablePrefix & "MEMBERS.M_NAME <> 'n/a' "

                      else

                                            strSql = strSql & " WHERE " & strMemberTablePrefix & "MEMBERS.M_STATUS = 1 and MEMBERS.M_NAME like '%PB%'" ' HER ER DEN UDVIDET

                      end if

Jeg kan ikke se om der er andre steder i koden det skal være - ellers er det på samme måde.
Avatar billede akr21jb Nybegynder
30. marts 2002 - 11:46 #17
Hej igen, undskyld jeg ikke var til stede igår.

Jeg har indsat dine linjer her :

    '## Forum_SQL - Get all members

    strSql = "SELECT " & strMemberTablePrefix & "MEMBERS.MEMBER_ID, " &_
    strMemberTablePrefix & "MEMBERS.M_STATUS, " &_
    strMemberTablePrefix & "MEMBERS.M_NAME, " &_
    strMemberTablePrefix & "MEMBERS.M_LEVEL, " &_
    strMemberTablePrefix & "MEMBERS.M_EMAIL, " &_
    strMemberTablePrefix & "MEMBERS.M_COUNTRY, " &_
    strMemberTablePrefix & "MEMBERS.M_HOMEPAGE, " &_
    strMemberTablePrefix & "MEMBERS.M_ICQ, " &_
    strMemberTablePrefix & "MEMBERS.M_YAHOO, " &_
    strMemberTablePrefix & "MEMBERS.M_AIM, " &_
    strMemberTablePrefix & "MEMBERS.M_TITLE, " &_
    strMemberTablePrefix & "MEMBERS.M_POSTS, " &_
    strMemberTablePrefix & "MEMBERS.M_LASTPOSTDATE, " &_
    strMemberTablePrefix & "MEMBERS.M_LASTHEREDATE, " &_
    strMemberTablePrefix & "MEMBERS.M_DATE " &_
    " FROM " & strMemberTablePrefix & "MEMBERS "
    if mlev = 4 then

                                            strSql = strSql & " WHERE " & strMemberTablePrefix & "MEMBERS.M_NAME <> 'n/a' "

                      else

                                            strSql = strSql & " WHERE " & strMemberTablePrefix & "MEMBERS.M_STATUS = 1 and MEMBERS.M_NAME like '%PB%'" ' HER ER DEN UDVIDET

                      end if

end if
select case SortMethod
osv. osv. osv.

Men får desværre denne fejl :
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/danmark/faelles/forumny/klanmembers1.asp, line 242

Linje 242 =
rs.open  strSql, my_conn, 3
Avatar billede coltau Juniormester
30. marts 2002 - 17:44 #18
Jeg kan se at jeg skrev forkert. det skulle være sådan.
strSql = strSql & " WHERE " & strMemberTablePrefix & "MEMBERS.M_STATUS = 1 and " & strMemberTablePrefix & "MEMBERS.M_NAME like '%PB%'"

Om det lige netop er den fejl - det får vi se. ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester