Avatar billede webtonet Nybegynder
22. november 2003 - 03:02 Der er 16 kommentarer

ODBC Microsoft Access Driver]COUNT field incorrect ?

Hvorfor får jeg denne fejl og hvad gør jeg ved den? Den siger at der er fejl i line 131 og line 131 er:

rs.Open SQL, Conn


Koden:

SQL = "SELECT ProductNum, Name, Price, ImageURL, Description, Category FROM produkter WHERE Category = '" & Category & "'"
   

    rs.Open SQL, Conn
Avatar billede webtonet Nybegynder
22. november 2003 - 03:09 #1
SQL = "SELECT ser sådanne ud:


SQL = "SELECT ProductNum, Name, Price, ImageURL, Description, Category FROM produkter WHERE category = '" & Category & "')"
Avatar billede thesurfer Nybegynder
22. november 2003 - 03:21 #2
Hvis du ikke starter en parentes (dvs, bruger "(") skal du selvfølgelig ikke afslutte en parentes (dvs, bruger ")").
Avatar billede webtonet Nybegynder
22. november 2003 - 03:30 #3
har lavet den om til:

SQL = "SELECT ProductNum, Name, Price, ImageURL, Description, Category FROM produkter WHERE (Category = '" & Category & "')"

men får samme fejl
Avatar billede thesurfer Nybegynder
22. november 2003 - 03:44 #4
den første er rigtig nok..:
SQL = "SELECT ProductNum, Name, Price, ImageURL, Description, Category FROM produkter WHERE Category = '" & Category & "'"

er Category typen tal eller tekst/string?
Avatar billede thesurfer Nybegynder
22. november 2003 - 03:49 #5
Det kan være at "Name" er reserveret.. brug altid et prefix hvis navnet muligvis er reserveret..
f.eks. By er på dansk.. men By på engelsk har en anden mening, specielt mht programmering..
Man tilføjer derfor et prefix, dvs et eller andet der står foran, f.eks. xBy.
Prøv det med "Name" og "Description".. tja prøv alle sammen.. hvis det så virker, kan du omdøbe dem tilbage en efter en for at finde ud af hvilken en der fejler..
Avatar billede thesurfer Nybegynder
22. november 2003 - 04:05 #6
Jeg går ikke ud fra at du bruger specielle tegn, som f.eks. "?", i navnene på felter.. hvis du gør, er det nok derfor..
Avatar billede deeflate Nybegynder
22. november 2003 - 10:49 #7
Hvis det er fordi et eller flere felt-navne er reserverede, så kan du, i stedet for at omdøbe alle dine felter, sætte [] om navnene.
Altså:

SQL = "SELECT [ProductNum], [Name], [Price], [ImageURL], [Description], [Category] FROM produkter WHERE Category = '" & Category & "'"
Avatar billede webtonet Nybegynder
22. november 2003 - 23:40 #8
hvis jeg indsætter dette får jeg denne fejl:

ADODB.Recordset error '800a0e7d'

The connection cannot be used to perform this operation. It is either closed or invalid in this context.

/items.asp, line 129


Jeg ved ikke om det kan være noget med at jeg omdåbte tabellen Category til kategorier. Men jeg smider lige hele koden op her
Avatar billede webtonet Nybegynder
22. november 2003 - 23:42 #9
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="stil.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#E6ECF2" topmargin="0">
<div align="center">
  <table border="1" cellpadding="0" cellspacing="0" bordercolor="#516C8C">
    <tr>
      <td width="802"><table border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td width="1062" height="0" valign="top">
<table width="800" border="0" cellpadding="0" cellspacing="0" background="images/bgstor.jpg" >
                <tr>
                  <td width="16" height="137" valign="middle" >&nbsp;</td>
                  <td valign="middle"><div align="left"><!--#include file="menu.asp" --></div></td>
                  <td valign="top"><div align="right">
                      <a href="http://danskemedia.dk"><img src="images/logo.jpg" width="90" height="107" hspace="30" vspace="15" border="0"></a></div></td>
                </tr>
              </table></td>
          </tr>
          <tr>
            <td height="300" valign="top"><table border="0" cellpadding="0" cellspacing="0">
                <tr>
                  <td valign="top" bgcolor="#9BB0CB"><table width="140" height="311" border="0">
                      <tr>
                        <td height="234" valign="top"><div align="center"><u>Vælge Kategori:<br>
                            <br>
                            </u> </div>
                          <table border="0" cellpadding="0" cellspacing="0" width="140">
                            <tr>
                              <td width="140" height="18" valign="top">
                                <%
        Set Conn = Server.CreateObject("ADODB.Connection")
        Set Rs = Server.CreateObject("ADODB.Recordset")
        'Modify and use this connection if your database is in your database directory
        'Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=D:\websider\martin\admin\031019461711772657.mdb"
        Conn.Open "DBQ=" & Server.Mappath("admin/databasennavn.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};"
        SQL = "SELECT Category FROM kategorier"

   
        rs.Open SQL, Conn

        x = 0
        For x = 1 to 9999
        If rs.eof then
        Exit For
        Else

        'URL Convert
        Category = rs("Category")
        Category = "<a href='items.asp?" & Category & "'>" & Category & "</a>"
        'End URL Convert

        %>
                                <% =Category %>
                                <br>
                                <%
        rs.MoveNext
        End If
        Next
        %>
                              </td>
                            </tr>
                          </table></font>
                          <br>
                          <br>
                          <br>
                          <br>
                          <br>
                        </td>
                      </tr>
                      <tr>
                        <td height="71" valign="top"><table width="140" border="0">
                            <tr>
                              <td height="21" valign="middle" bordercolor="#E6ECF2" bgcolor="#E6ECF2"> <div align="center"><u>Sidste
                                  Nyt</u></div></td>
                            </tr>
                            <tr>
                              <td height="40" valign="middle" bordercolor="#E6ECF2" bgcolor="#E6ECF2">
                                <%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("admin/databasennavn.mdb")
strSQL = "SELECT TOP 5 * FROM nyheder ORDER BY id DESC"
set rs = Conn.execute(strSQL)
if rs.EOF then
Response.write "Databasen er tom."
else
Do Until rs.EOF
%>
                                <a href="admin/visnyhed.asp?id=<%=RS("id")%>" target="_top"><%=RS("overskrift")%></a>
                                <li>Oprettet d. <%=RS("dato")%>
                                  <%RS.MoveNext
Loop
end if

Conn.Close
Set Conn = Nothing%>
                            </tr>
                          </table>
                      </tr>
                    </table></td>
                  <td width="100" align="center" valign="top"><p>
                    </p>
                    <table width="650" height="425" border="0" align="right">
                      <tr>
                        <td width="650" align="center" valign="top"><div align="center">
                            <p align="left">
                             
                            <font face="Arial" size="4"><b>
                            <table border="0" cellpadding="0" cellspacing="3" width="100%">
                              <tr>
                                <td width="100%" valign="top"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
                                  <%

If Category = "" then
response.Write("Skriv venligst hvad du vil søge på")
else
end if

        Set Conn = Server.CreateObject("ADODB.Connection")
        Set Rs = Server.CreateObject("ADODB.Recordset")
        'Modify and use this connection if your database is in your database directory
        'Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=D:\websider\martin\admin\databasennavn.mdb"
        SQL = "SELECT [ProductNum], [Name], [Price], [ImageURL], [Description], [Category] FROM produkter WHERE kategorier = '" & Category & "'"
   

    rs.Open SQL, Conn


For x = 1 to 10
    If rs.eof then
        Exit For
    Else
ImageURL = rs("ImageURL")
ImageURL = "<img src='" & ImageURL & "'>"

%>
                                  <br>
                                  </font><hr align="left" size="1" width="600">
                                  <table width="600" border="0" cellspacing="0" cellpadding="0">
                                    <tr>
                                      <td width="152" align="right" valign="middle" height="19">
                                        <div align="left">Vare
                                          nr.&nbsp;</div></td>
                                      <td width="448" height="19">
                                        <% =rs("ProductNum")%>
                                        </td>
                                    </tr>
                                    <tr>
                                      <td width="152" align="right" valign="middle">
                                        <div align="left">Vare
                                          navn&nbsp;</div></td>
                                      <td width="448">
                                        <% =rs("Name")%>
                                        </td>
                                    </tr>
                                    <tr>
                                      <td width="152" align="right" valign="middle">
                                        <div align="left">Vare
                                          beskrivelse </div></td>
                                      <td width="448">
                                        <% =rs("Description")%>
                                      </td>
                                    </tr>
                                    <tr>
                                      <td width="152" align="right" valign="middle">
                                        <div align="left">Pris</div></td>
                                      <td width="448">
                                        <% =rs("Price")%>
                                        </td>
                                    </tr>
                                    <tr>
                                      <td width="152" align="right" valign="middle"><a href="default.asp?action=add&item=<% =rs("ProductNum")%>&count=1"><img src="images/koeb.jpg" width="34" height="20" border="0"></a>&nbsp;</td>
                                      <td width="448" rowspan="2" align="left" valign="bottom">
                                        <% =ImageURL %>
                                        </td>
                                    </tr>
                                    <tr>
                                      <td width="152" align="right" valign="middle">&nbsp;</td>
                                    </tr>
                                  </table>
                                  <br>
                                  <%
      rs.MoveNext
    End If
Next
%>
                                </td>
                              </tr>
                            </table>
                            </b></font>
<p>&nbsp;
                            <p><br>
                          </div></td>
                      </tr>
                    </table>
                   
                  </td>
                </tr>
              </table></td>
          </tr>
          <tr>
           
          </tr>
        </table></td>
    </tr>
  </table>
</div>
</body>
</html>
Avatar billede deeflate Nybegynder
23. november 2003 - 10:55 #10
Det sted, hvor du får fejlen, har du ikke åbnet din conn. Derfor kan den ikke bruges til at åbne dit rs.

En anden ting: Du siger, at du har omdøbt Category til kategorier. Husk lige at gå koden igennem og ret det alle steder.
Se f.eks. linie 126:
SQL = "SELECT [ProductNum], [Name], [Price], [ImageURL], [Description], [Category] FROM produkter WHERE kategorier = '" & Category & "'"
Avatar billede webtonet Nybegynder
23. november 2003 - 12:39 #11
jeg fandt fejlen. Der er 2 fejl 1: Jeg hvade glemt <%Language = "VBScript"%>
<%Category = request.Querystring%> i  toppen. 2: Et problem jeg har endnu er at jeg kalder et billedet:

ImageURL = rs("ImageURL")
ImageURL = "<img src='" & ImageURL & "'>"

jeg har lavet databasen om s
Avatar billede webtonet Nybegynder
23. november 2003 - 12:41 #12
jeg har lavet tabellen med billedet om til et OLE-objekt og derfor ikke kunne kalde billedet. Ved i hvad jeg skal ændre for at kalde billeder på denne måde?
Avatar billede webtonet Nybegynder
23. november 2003 - 12:42 #13
glem den sidste line fra den 23/11-2003 12:39:24

der kom et udfør imellem mig og skærmen
Avatar billede deeflate Nybegynder
23. november 2003 - 13:49 #14
Her er en lille vejledning fra http://www.aspupload.com/manual_db.html :

Exporting Files from the Database to a Client Browser

A file saved in the database can be downloaded to the client browser directly without saving it to the hard drive first. No third-party components are necessary, downloading from the database can be achieved with ADO alone.
To download a file from the database, you need to provide a link on your web page pointing to an ASP script that calls Response.BinaryWrite. For example, your HTML page contains the following link:

<A HREF="download.asp?id=2">Click here to download</A>

The file download.asp may look as follows:

<%
Set db = Server.CreateObject("ADODB.Connection")
db.Open Connect
SQL = "SELECT * FROM MYIMAGES where id = " & Request("id")
Set rs =db.Execute( SQL )
Response.ContentType = "application/octet-stream"
' let the browser know the file name
Response.AddHeader "Content-Disposition", "attachment;filename=" & Trim(rs("filename"))
' let the browser know the file size
Response.AddHeader "Content-Length", rs("filesize")
Response.BinaryWrite rs("image_blob")
%> 


To display an image stored in the database, you should use an <IMG> tag instead of <A>, as follows:

<IMG SRC="download.asp?id=3">

Note that the download script must not contain any HTML tags such as <HTML> or <BODY>, just pure ASP script.
Avatar billede thesurfer Nybegynder
18. december 2003 - 05:02 #15
Dette spørgsmål mangler input.
Det kan f.eks. være at spørgeren mangler at acceptere/afvise svar/komme med feedback, eller af en svarer mangler at lægge et svar/komme med feedback.
Avatar billede deeflate Nybegynder
18. december 2003 - 09:18 #16
Jeg tror nu, det er fordi spørgeren mangler at komme med feedback, men her er da i hvert fald et svar fra mig ;)
Så får vi se, om der sker noget...
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