Avatar billede markskod Nybegynder
15. februar 2001 - 21:28 Der er 19 kommentarer og
1 løsning

Fejl i Database Script på Windows Nt 4.0 Server

Hejsa Allesammen

Jeg får en sjov fejl i et Database script når det kører på en Windows NT 4.0 Server men ikke når den kører på en Windows 2000 Server???

Her er mit script:

<%

Set MyConn = Server.CreateObject(\"ADODB.Connection\")
MyConn.Open \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"dbase\\boevl-log.mdb\")

Sub CleanUp()
  MyConn.Close
  Set MyConn = Nothing
End Sub

Sub CleanUp2()
Rs.Close
  Set Rs = Nothing
MyConn.Close
  Set MyConn = Nothing
End Sub

Dim Method

Method = Request.QueryString(\"method\")

Select Case Method

  Case \"Add\"
    Add(MyConn)

End Select

Sub Add(MyConn)
 
  Dim Navn, Besked, Dato, SQL
 
  Navn = Replace(Trim(Request.Form(\"navn\")), \"\'\", \"\'\'\")
  Besked = Replace(Trim(Request.Form(\"besked\")), \"\'\", \"\'\'\")
  Dato = Now

  If Navn = \"\" Or Besked = \"\" Then Response.Redirect \"index.asp\"

  SQL = \"Insert Into Log (Navn, Besked, Dato) Values(\'\"&navn&\"\', \'\"&besked&\"\', \'\"&Dato&\"\')\"

  MyConn.Execute(SQL)

  CleanUp()
 
  Response.Redirect \"index.asp\"

End Sub
%>

<html>

<head>
<title>Bøvl LogBog &copy </title>
<link rel=\"stylesheet\" type=\"text/css\" href=\"main.css\">
</head>

<body>
<br>

<div align=\"center\"><center>

<table Class=\"1\" cellpadding=\"0\" cellspacing=\"0\">
  <tr>
    <td align=\"center\"><font Class=\"punkt\">. </font><font Class=\"text\"> Bøvl Log </font><font Class=\"punkt\"> .</font></td>
  </tr>
</table>
</center></div>

<br>

<div align=\"center\"><center>

<table Class=\"1\" cellpadding=\"0\" cellspacing=\"2\">
  <tr>
    <td Class=\"1\" colspan=\"2\"><font Class=\"text\">På denne side har du mulighed får at skrive dig ind hvis du er enten det en eller det andet.<br>Du har også mulighed få at se de sidste indtastninger der er blevet lavet.<br>&nbsp;</font></td>
  </tr>
  <tr>
    <td Class=\"3\"><font Class=\"text\">Tilføj en ny besked!</font>

  <form action=\"index.asp?method=Add\" method=\"post\">

    <table Class=\"2\" cellpadding=\"0\">
      <tr>
        <td Class=\"5\"><font Class=\"text2\">Navn:</font></td>
        <td Class=\"4\"><input type=\"text\" name=\"navn\" size=\"70\" Class=\"inputbox\"></td>
      </tr>
      <tr>
        <td Class=\"5\"><font Class=\"text2\">Besked:</span></td>
        <td Class=\"4\"><textarea rows=\"10\" name=\"besked\" cols=\"71\" Class=\"inputbox\"></textarea></td>
      </tr>
      <tr>
        <td Class=\"6\" colspan=\"2\"><input type=\"submit\" value=\"    Tilføj    \" name=\"Add\" Class=\"Text2\"></td>
      </tr>
    </table></div>
  </form>
  </tr>     
</table>
</center></div>

<br>

<div align=\"center\"><center>

<table Class=\"1\" cellpadding=\"0\" cellspacing=\"0\">
  <tr>
    <td align=\"center\" Class=\"2\"><font Class=\"text\">Beskeder Online<br><br></font>

<%

Set Rs = MyConn.Execute(\"SELECT * FROM Log Order By Dato DESC;\")

Do While Not Rs.EOF
    %>
<table Class=\"2\" cellpadding=\"0\">

    <tr>
        <td Class=\"8\"><font Class=\"date\"><%= Rs.Fields(\"Dato\").Value %></font></td>
        <td Class=\"8\"><font Class=\"text\"><%= Rs.Fields(\"Navn\").Value %></font></td>
    </tr>
    <tr>
        <td Class=\"7\" colspan=\"2\"><font Class=\"text\"><%= Rs.Fields(\"Besked\").Value %></font></TD>
    </tr>

</table>
<br>
    <%

    Rs.MoveNext
Loop

Cleanup2()

%>
</td>
  </tr>
</table>
</center></div>

<div align=\"center\"><center>

<br>

<table Class=\"1\" cellpadding=\"0\" cellspacing=\"0\">
  <tr>
    <td align=\"center\"><font Class=\"reg\">&reg </font><font Class=\"text\"> Lavet af Henrik </font><font Class=\"reg\"> &reg</font></td>
  </tr>
</table>
</center></div>
</body>
</html>


Og her er fejlen den \"siger\"

Microsoft OLE DB Provider for ODBC Drivers error \'80004005\'

[Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable query.

/boevl/Arbejds-log/index.asp, line 41


Er der nogen der kan hjælpe mig ?????

Avatar billede sesam Nybegynder
15. februar 2001 - 21:31 #1
Der er fordi du ikke har rettigheder til at se den

den skal ligge i log mappen
Avatar billede sesam Nybegynder
15. februar 2001 - 21:32 #2
Eller i den mappe der er tilladelse til at skrive til din database i
Avatar billede markskod Nybegynder
15. februar 2001 - 21:37 #3
Hey Sesam

Jeg har retigheder til at skrive i den mappe

Men det var et godt foresøge ;-)
Avatar billede eagleeye Praktikant
15. februar 2001 - 21:42 #4
Hvilken fejl får du?
Avatar billede eagleeye Praktikant
15. februar 2001 - 21:42 #5
Øhh jeg skal vist havde briller :-)
Avatar billede eagleeye Praktikant
15. februar 2001 - 21:44 #6
Hvilken er linie 41?
Avatar billede eagleeye Praktikant
15. februar 2001 - 21:46 #7
Prøv at sætte mode til read/write

myConn.Mode = 3 \' 3 = adModeReadWrite
myConn.Open (....
Avatar billede brain Nybegynder
15. februar 2001 - 21:50 #8
prøv at...

SQL = \"Insert Into Log (Navn, Besked, Dato) Values(\'\"&navn&\"\', \'\"&besked&\"\', #\"&Dato&\"#)\"

istedet for...

  SQL = \"Insert Into Log (Navn, Besked, Dato) Values(\'\"&navn&\"\', \'\"&besked&\"\', \'\"&Dato&\"\')\"

 
 
Avatar billede eagleeye Praktikant
15. februar 2001 - 21:59 #9
Har du også skrive rettigheder til databasen?

http://www.activeserverpages.dk/aspdigital/kapitel2/updateable_query.asp
Avatar billede markskod Nybegynder
15. februar 2001 - 22:03 #10
Det er ikke nogen af de foreslag der virker!?

Og linie 41 er:
MyConn.Execute(SQL)
Avatar billede eagleeye Praktikant
15. februar 2001 - 22:05 #11
Så er der måske en \"stavefejl\" i felt navne.
Prøv at skal de bogstaver med stort som er med stor i kolonne navne. (Navn, Besked, Dato)
Avatar billede brain Nybegynder
15. februar 2001 - 22:12 #12
ok, så prøv

SQL = \"Insert Into Log (Navn, Besked, Dato) Values(\'\"&navn&\"\', \'\"&besked&\"\', Now)\"

som er det samme

Avatar billede brain Nybegynder
15. februar 2001 - 22:12 #13
eagleeye > access er ikke case sensitive...
Avatar billede eagleeye Praktikant
15. februar 2001 - 22:15 #14
Måske ikke med det er da hver at prøve da fejlen normalt skyldes en stavefejl.

brian>> Din SQL sætning skal vist være
SQL = \"Insert Into Log (Navn, Besked, Dato) Values(\'\"&navn&\"\', \'\"&besked&\"\', \" & Now & \")\"
Ellers virker den ikke.

Avatar billede brain Nybegynder
15. februar 2001 - 22:19 #15
eagle > ehh, nej, den er vist fin fin... :)
Avatar billede brain Nybegynder
15. februar 2001 - 22:20 #16
eagle > Now er også nu i access
Avatar billede eagleeye Praktikant
15. februar 2001 - 22:21 #17
10-4
Avatar billede markskod Nybegynder
15. februar 2001 - 22:25 #18
eagleeye

hmmm jeg skal lige have fadt i min webmaster, men det bliver ikke før i morgen.

Hyyge .-)
Avatar billede arno Nybegynder
16. februar 2001 - 15:06 #19
markskod ---> Jeg havde et tilsvarende problem på et tidspunkt.. jeg fik ingen svar på hvad / hvordan / hvorfor, så jeg lavde noget andet:

Først køre du en slet, ret efter køre du en insert med de nye værdier...

Bare et forslag..

/arno
Avatar billede markskod Nybegynder
22. februar 2001 - 14:47 #20
Well jeg har selv løst problemet :-)
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