21. marts 2001 - 21:00Der er
13 kommentarer og 1 løsning
Automatisk sletning af accessposter
Jeg kunne godt tænke mig at mine nyheder som ligger i en access database, automatisk bliver slettet f.eks. 1 uge uge efter de er tilføjet. Hvordan laver man det med asp?
Skal virksomheder stå stærkere mod angreb og kunne udvikle sig, skal sikkerhed, drift og forretning tænkes sammen. Det er tanken bag Jysk IT’s ambition om at skabe en “sikker fremtid” for kunderne.
Du kan gøre det fra serveren, med \'at\' kommandoen. så skriver du bare en *.vbs-fil, og kalder den hver uge. Men hvis det er i Access, så skal du nok sidde på selve serveren.
Måske kan du kontakte den via et ODBC-link, men det kender jeg ikke så godt.
Jeg bruger det selv med SQL Server, hvor min lokale maskine kontakter serveren ok sletter, sender e-mails m.v. en gang i timen.
Det er ikke så slemt, som det lyder. Sæt et datofelt på for den sidste dag nyheden skal vises, og så lav din select-sætning, så den kun tager dem med, der ikke har overskredet deres sidste dato. Så kan du en gang imellem (hver måned måske) gå ind og slette dem.
Det der med automatisk sletning ... pas på ... sporene skræmmer :)
Nu er jeg nybegynder i asp og \"låner\" faktisk bare script forskellige steder og prøver at passe dem til på mine sider, så jeg ville gerne hvis I kunne give et mere udybende svar evt. et eks.
Gå ind på din NT-maskine, åbn en kommandoprompt og skriv:
at /? <ENTER>
Så kommer der en lang forklaring, som du så vidt jeg husker også kan finde i windows help.
Ad den vej skulle det kunne gøres.
Hvis det var en SQL server, så kunne man gøre følgende:
Lav en tekst-fil med følgende:
Dim objConn Set objConn = Createobject(\"ADODB.Connection\") objConn.Open (Provider=SQLOLEDB;Data Source=minSQLServersNavn;Initial Catalog=minDatabasesNavn;User ID=mitBrugernavn;password=mitPassword\" objConn.Execute \"DELETE Nyheder WHERE Dato < Getdate()-7\" objConn.Close Set objConn = nothing
- Eller hvilken SQL du nu vil bruge!
Gem den som fx C:\\sletnyheder.vbs
Gå ind i \"DOS\"-prompten og skriv:
at 12:00/every:su \"C:\\sletnyheder.vbs\" <RETURN>
Så kører dette script hver søndag kl 12 middag.
Jeg bruger det som sagt selv
Men som også sagt har jeg ikke forstand på at kontakte Access via ADO, især ikke på tværs af servere, men det er der måske andre der har.
Da jeg kun har et alm. webhotel hos en udbyder kan jeg ikke komme ind på selve NT serveren. Men tak alligevel, Lars
Svaret fra euhp (Lars) lyder mere brugbart, men det skal nok uddybes lidt mere. Er der evt. nogen der ved hvor jeg kan finde et script der bruger Lars\'s løsning med global.asa?
Vis lige hvordan du åbner databaseforbindelsen, og forklar hvad der skal slettes.
Og så er du med på at de poster der er for gamle som udgangspunkt bliver slettet hver gang der kommer en bruger ind på siden, og aldreig bliver slettet hvis der ingen besøgende er. Ikke sandt?
Jeg har lige stillet dette spørgsmål i bero da jeg har fået et anden og lidt alvorligere problem se spørgsmål 60589 Provider error \'8000ffff\'
Synes godt om
Ny brugerNybegynder
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.