Avatar billede soda Nybegynder
20. december 2003 - 15:14 Der er 12 kommentarer og
1 løsning

Fejl ved updatering af database

Jeg har et underligt problem i min ASP kode og kan ikke umiddelbart finde fejlen. SQL Sætningen virker på en SQL Server og i Access, men får fejl når jeg prøver, at køre koden via ASP.

<%
  UserIP = request.ServerVariables("REMOTE_ADDR")
  DateTime = Date & " " & Time
  DBPath = Server.MapPath("./db/Zips.mdb")
   
  Set Conn = Server.CreateObject("ADODB.Connection")
  Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & DBPath)

  SQLStr = "Select IP, Count From Counter Where IP = '" & UserIP & "'"
  Set rs = Conn.Execute(SQLstr)

  if rs("IP") = UserIP then
    Count = rs("Count")
    Count = Count + 1
    SQLStr = "Update Counter Set Count = " & Count & " Where IP = '" & UserIP & "'"
  else
    SQLStr = "Insert Counter (IP,Count) Values ('" & UserIP & "', 1)"
  End if
  Set rs = Conn.Execute(SQLstr)
%>

Det er i linjen -> SQLStr = "Update Counter Set Count = " & Count & " Where IP = '" & UserIP & "'" <- jeg får fejlen.

Fejlen lyder således:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

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

/asp/post.asp, line 30

Update linjen virker som sagt både på en SQL Server og i Access og fjerner jeg linjen, så "virker" koden også.

Nogen ideer ?
Avatar billede thesurfer Nybegynder
20. december 2003 - 15:17 #1
Avatar billede soda Nybegynder
20. december 2003 - 16:40 #2
Det burde nok virke, hvis dette var på en NT Server, 2000 Server eller 2003 Server, men jeg bruger en Windows XP Pro til, at teste på og her kan jeg ikke sætter sikkerhed op via fanebladet i Egenskaber for DB folderen.

Jeg har prøvet, at oprette skrive rettigheder til folderen direkte via at tilføje den som virtual directory i IIS, men dette hjælper heller ikke.
Avatar billede thesurfer Nybegynder
20. december 2003 - 16:50 #3
Jeg har også problemer med XP Pro og skriverettigheder.. Jeg bruger filsystemet FAT32. Hvad med dig?

Jeg ved ikke om du har "Simple filesharing" aktiveret, men hvis du deaktiverer "Simple filesharing", får du nogle flere muligheder mht deling og rettigheder.
Avatar billede thesurfer Nybegynder
20. december 2003 - 16:53 #4
Jeg prøvede på at finde en løsning, men det gik ikke:
http://www.eksperten.dk/spm/407070
Avatar billede soda Nybegynder
20. december 2003 - 17:06 #5
YES. Nu virker det fandme ;o) - Slå blot Simple Filesharing fra og genstartede IIS'en og nu køre det bare. Så kan jeg komme lidt videre.

Svare du her, så får du point.
Avatar billede thesurfer Nybegynder
20. december 2003 - 17:08 #6
Lækkert! :)
Et svar fra mig :)
Avatar billede thesurfer Nybegynder
20. december 2003 - 17:09 #7
Hvilket filsystem bruger du? FAT32 / NTFS
Avatar billede soda Nybegynder
20. december 2003 - 17:39 #8
Jeg bruger naturligvis NTFS. Har opgivet FAT32 for længe siden.
Avatar billede soda Nybegynder
20. december 2003 - 17:40 #9
Hvis du vil konvertere fra FAT32 til NTFS, så skal du bare skrive:

Convert C: /FS:NTFS
Avatar billede thesurfer Nybegynder
20. december 2003 - 17:44 #10
soda> Nul putte! :)
Der skal ikke konverteres fra FAT32 til NTFS.. tværtimod.. NTFS -> FAT32 :)
Men det kan ikke gøres uden at man mister data..
Det kan godt være at NTFS har bedre sikkerhed, men FAT32 er kompatibelt med DOS, Win95/98/ME/NT/2000/XP. NTFS kan kun ses af NT/2000/XP.

Jeg holder mig til FAT32 :)
Avatar billede soda Nybegynder
21. december 2003 - 22:09 #11
Putte ? - jow jow.

Jeg har det på den måde, at på et eller andet tidspunkt, så må man sætte en stopper for bagudkompatibilitet og kommer videre. DOS, Win9x er død og for, at få hastighed mår man klippen snoren til det gamle.

Du kan sagtens konvertere fra NTFS -> FAT32. Bare fordi Microsoft ikke understøtter det, så betyder det ikke, at man ikke kan. Du skal blot anskaffe dig PowerQuest Partition Magic 8. Den og tidligere version kan godt gære det også uden, at miste data.

Du kan jo også blot gøre, som jeg har gjort. Have alle dine partioner, som NTFS, men have én enkelt, som FAT32, så du blot kan ligge dine fælles OS data på den.

Du kunne også bare installer en NTFS4DOS driver, som faktisk findes og virker ganske udmærket og så er dit problem også løst ;o)
Avatar billede thesurfer Nybegynder
21. december 2003 - 22:15 #12
Jeg har kender til NTFS4DOS og et ligende program, men får man skrive rettigheder?
Dem jeg har set, tillader ikke at skrive til filer, kun læse dem.
"Have alle dine partioner, som NTFS, men have én enkelt, som FAT32, så du blot kan ligge dine fælles OS data på den."
Jeg mente at Windows systemet skal lægge på en FAT32 partition, så man kan boote op i DOS, og redde data. Det kan man ikke men XP boot cd'en.
Avatar billede soda Nybegynder
21. december 2003 - 22:37 #13
Jeg bruger Winternals Windows Emergency Rescue Disc (WindowsERD) til det. Den kan boote op i DOS 622, Win95, Win98 og har også Partition Magic på den.
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