Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Databas och datum

Postades av 2005-05-07 11:18:13 - Ingemar Axelsson, i forum databaser, Tråden har 23 Kommentarer och lästs av 1261 personer

Tjenare alla ASP Experter!!!

Det är så att jag vill få en databas att nollställas automatiskt varje ny månad...

Jag har testat lite olika sätt att göra det på men kommer inte på hur det skall göras korrekt

jag kan göra det manuellt via detta

SQL = "UPDATE topplista SET [In] = 0, [Out] = 0"

Jag har skapat en kolumn som heter month som är tänkt att den skall spara månadens nummer eller nått åt det hållet och när det är en ny månad skall kolumnerna In och Out sättas in en nolla igen det jag undrar bland annat är skall den vara tal eller datum/tid i kolumnerna och hur man får det att kolla om det är en ny månad

just nu är den tal och jag har försökt med följande men jag är inte säker på om det är korrekt

If month <> month(now) Then
SQL = "UPDATE topplista SET [In] = 0, [Out] = 0, [month] = month(now)"
End If

eller är detta mer korrekt på SQL frågan???

'SQL = "UPDATE topplista SET [In] = 0, [Out] = 0, [month] = < #"&DateAdd("m",-1,Now)&"#")

Jag vet inte riktigt hur jag skall få det att kötas automatiskt som sagt var så nu vänder jag mig till er här ute som kan komma med ett bra exempel på hur jag skall fixa detta vore tacksam om n i har tid att hjälpa mig med denna fråga

Med vänliga hälsningar Ingemar A


Svara

Sv: Databas och datum

Postades av 2005-05-08 10:59:56 - Pelle Johansson

Hej Ingemar,

Du säger att du vill nollställa ett register då det är ny månad. Eftersom du troligen inte kan bygga något program som gör det just när du vill så föreslår jag att du i din tabell lagrar både datum och resultat.

På det sättet kan du hålla reda på tidigare resultat, tidigare månader och även slippa oroa dig för att du inte nollställer i tid.

Mitt förslag är således att du lagrar mer transaktioner, en för varje månad istället för att rensa tidigare. Sen kan du givetvis gå in manuellt och göra en städning säg varje kvartal om du har dåligt med plats i databasen.

Hoppas detta resonemang hjälper dig


Svara

Sv:Databas och datum

Postades av 2005-05-08 17:42:25 - Ingemar Axelsson

Hej Pelle och tack för ditt svar:

Jag har dessa fält i databasen just nu:

id, Email, Url, Banner, Sidnamn, Info, In, Out, Datum, Manad

Manad är det tänkt att där skall man spara månadens nummer t. ex 5.

Det måste gå på något sätt om man kollar vilken månad det är just nu om det är månad 5 och i databasen kolla om det finns en 5 i fältet Manad om det inte gör det så skall min SQL fråga köras och nollställa In och Out fälterna och samtidigt sätta in månadens nummer och sedan avsluta det hela

Tycker att detta borde fungera men jag vet bara inte hur det skall se ut

Bytte namn på fältet Month till Manad med tanke på att det month functionen


Svara

Sv: Databas och datum

Postades av 2005-05-08 18:03:04 - Göran Andersson

Vad använder du detta till?

Har du flera poster i tabllen? Din fråga uppdaterar ju alla poster som finns i tabellen.

Är det helt befängt att spara datat, som Pelle föreslog?

Ifall du nödvändigtvis vill kasta bort datat så kan du göra det när du uppdaterar In och Out, vad du nu gör med dem. Typ:

lngMonth = Month(Date())
SQL = "UPDATE topplista " & _
"SET [In] = (case when Manad = " & lngMonth & " then [In] else 0 end) + 1, " & _
"[Out] = (case when Manad = " & lngMonth & " then [Out] else 0 end) + 1, " & _
"Manad = " & lngMonth


Svara

Sv:Databas och datum

Postades av 2005-05-08 23:46:30 - Ingemar Axelsson

Verkar inte fungera???

Humm jag kommer ingen vart på detta så jag får väl ge mig antar jag tack alla som har svarat på mina frågor...

Jag får fortsätta att nollställa den manuellt via min admin sida (TYVÄR)

MVH Ingemar A


Svara

Sv: Databas och datum

Postades av 2005-05-09 01:29:21 - Göran Andersson

Standardfråga #1:
Vad menar du med att det "inte fungerar"?


Svara

Sv:Databas och datum

Postades av 2005-05-09 16:31:40 - Ingemar Axelsson

Jag testade att sätta en 4 på fältet Manad för att se om den nollställde in och out fälterna men det gjorde den inte träffarna in och ut stod fortfarande kvar

och det är ju månad 5 nu så in och ut skall nollställas samtidigt som det skall in en 5 i fältet Manad


Svara

Sv: Databas och datum

Postades av 2005-05-10 18:21:39 - Göran Andersson

När jag testar frågan så fungerar det alldeles utmärkt.


Svara

Sv:Databas och datum

Postades av 2005-05-11 09:07:08 - Ingemar Axelsson

Vad skall fältet vara då Tal eller Datum/tid just nu är den Tal och det står en 4 i databasen just nu i fältet Manad...

Jag testade också med att sätta följande i din kod

Month(Date())

till

Month(Now())

men det blev ingen skillnad

Kan jag kanske skicka koden till dig så får du se hur den ser ut via din email adress om du vill ge ut den och om du vill hjälpa mig med att kolla på det så du kan se vad jag gör för fel???


Svara

Sv: Databas och datum

Postades av 2005-05-11 11:50:29 - Thomas Vanhaniemi

Detta ska fungera...
<code>
UPDATE topplista SET [In] = 0, [Out] = 0, [month] = MONTH(NOW()) WHERE [month] <> MONTH(NOW())
</code>
/Thomas


Svara

Sv: Databas och datum

Postades av 2005-05-11 12:34:47 - Göran Andersson

Snälla Ingemar, använd skiljetecken så att det går att läsa vad du skriver.

Ifall du enbart vill lagra månaden så är det lämligt att datatypen är ett tal.

Kan du inte klistra in lite av din kod här?


Svara

Sv:Databas och datum

Postades av 2005-05-12 10:26:39 - Ingemar Axelsson

Här är en bit av koden för topplistan:

<code>
<%
Set RecSet = Server.CreateObject("ADODB.Recordset")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DB

'tidigare test med att nollställa databasen olika tester ligger här tillfälligt
'If Manad <> Month(Date()) Then
'SQL = "UPDATE topplista SET [In] = 0, [Out] = 0, [Manad] = Month(Date())"
'SQL = "UPDATE topplista SET [In] = 0, [Out] = 0, [Manad] = < #"&DateAdd("m",-1,Now)&"#")"
'SQL = "UPDATE topplista SET [In] = 0, [Uot] = 0, [Manad] = < #"&DateAdd("d",-29,Now)&"#")"
'SQL = "UPDATE topplista SET [In] = 0, [Out] = 0, [month] = MONTH(NOW()) WHERE [month] <> MONTH(NOW())"
'End If

Const toppPerSida = 30
If Request.QueryString("page") = "" then
page = 1
Else
page = Request.QueryString("page")
End If

RecSet.CursorLocation = 3
RecSet.CacheSize = toppPerSida

SQL = "Select * From topplista Order By [In] Desc"
RecSet.Open SQL, Conn, 1, 2


lngMonth = Month(Date())
SQL "UPDATE topplista " & _
"SET [In] = (case when Manad = " & lngMonth & " then [In] else 0 end) + 1, " & _
"[Out] = (case when Manad = " & lngMonth & " then [Out] else 0 end) + 1, " & _
"Manad = " & lngMonth

Conn.Execute(SQL)
%>
</code>

Resterande ligger i en settings fil där det står följande

<code>
DB = Server.MapPath("databasen/topplista.mdb") 'Databasens sökväg
</code>

om du vill ha mer av koden så säg bara till Göran.

Och till tomas så har jag redan testat det du gav mig kolla i kodsnutten här så ser du vad jag har testat med


Svara

Sv: Databas och datum

Postades av 2005-05-12 10:48:48 - Thomas Vanhaniemi

Jag gjorde snabbt en testdatabas med samma fält och namn som du har och körde frågan jag skrev åt dig, vilket fungerade fint!

Så, då är frågan, vad är de olika fälten av för datatyp?

In och Out antar jag är Tal, Month då?

<code>
Set RecSet = Server.CreateObject("ADODB.Recordset")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DB

SQL = "UPDATE topplista SET [In] = 0, [Out] = 0, [month] = MONTH(NOW()) WHERE [month] <> MONTH(NOW())"

Conn.Execute(SQL)
.
.
.
</code>

Testa köra som ovan...
Och se till att In, Out och month fälten är av typen Tal...

/Thomas


Svara

Sv: Databas och datum

Postades av 2005-05-12 11:18:20 - Göran Andersson

Jaså, du använder Access... Om du hade visat något felmeddelande så hade det varit uppenbart mycket tidigare...

Access stöder inte case. Du får använda iif() istället:

SQL "UPDATE topplista " & _
"SET [In] = iif(Manad = " & lngMonth & ",[In],0) + 1, " & _
"[Out] = iif(Manad = " & lngMonth & ",[Out],0) + 1, " & _
"Manad = " & lngMonth


Svara

Sv:Databas och datum

Postades av 2005-05-12 11:23:12 - Thomas Vanhaniemi

Det är helt onödigt att göra en massa kontroller om något är något annars är det något annat ;)
Det min version gör är att den först hämtar ut alla som inte har month = 5 till exempel, och uppdaterar dem så att den lägger In = 0, Out = 0 och month blir då aktuell månad...

/Thomas


Svara

Sv:Databas och datum

Postades av 2005-05-12 11:25:23 - Ingemar Axelsson

Fungerade inte heller satte det nu så här

<code>
lngMonth = Month(Date())
SQL "UPDATE topplista " & _
"SET [In] = iif(Manad = " & lngMonth & ",[In],0) + 1, " & _
"[Out] = iif(Manad = " & lngMonth & ",[Out],0) + 1, " & _
"Manad = " & lngMonth
</code>

Manad, In och Out är tal

Sedan hade du iif skall det inte vara if???


Svara

Sv: Databas och datum

Postades av 2005-05-12 11:26:35 - Thomas Vanhaniemi

Hur ser din "nollställningskod" ut nu då?
Har du testat exakt så som jag skrev?

/Thomas


Svara

Sv: Databas och datum

Postades av 2005-05-12 11:30:06 - Thomas Vanhaniemi

Felet är att det står "Manad" istället för "month"...

<code>
lngMonth = Month(Date())
SQL "UPDATE topplista " & _
"SET [In] = iif(month= " & lngMonth & ",[In],0) + 1, " & _
"[Out] = iif(month= " & lngMonth & ",[Out],0) + 1, " & _
"month = " & lngMonth
</code>

Fördelen med denna kod jämfört med min är att den även adderar på in och out med ett varje varv, om det är det du vill åstadkomma...
När ska du uppdatera dina fält?

/Thomas


Svara

Sv: Databas och datum

Postades av 2005-05-12 12:14:31 - Ingemar Axelsson

Så fick det att fungera det var som du sade Tomas funkade kanon fint

har nu fixat så att den sätter in månadens nummer när folk reggar sig på sidan också :-)

Tack skall ni ha Både Tomas och Göran och speciellt tack för att ni stod ut med alla mina frågor nu har jag även lärt mig lite på kuppen också..

Åter igen tack

MVH Ingemar Axelsson


Svara

Sv:Databas och datum

Postades av 2005-05-12 12:24:16 - Thomas Vanhaniemi

Kul att kunna hjälpa!

/Thomas


Svara

Sv:Databas och datum

Postades av 2005-05-12 12:34:47 - Göran Andersson

> Felet är att det står "Manad" istället för "month"...

Hm... Men fältet hette ju Manad:

"Jag har dessa fält i databasen just nu:
id, Email, Url, Banner, Sidnamn, Info, In, Out, Datum, Manad"

Döpte du om fältet till Month igen, Ingemar?


Svara

Sv: Databas och datum

Postades av 2005-05-12 12:39:52 - Thomas Vanhaniemi

Göran,

i första inlägget säger han att kolumnen heter "month", så om Ingemar skrivit Manad är det nog fel...

Dessutom, ditt exempel adderar på ett varje körning, vad säger att han vill addera på ett i både In och Out samtidigt?
De kommer ju då att alltid vara samma värde, vilket är lite onödigt...

/Thomas


Svara

Sv:Databas och datum

Postades av 2005-05-12 13:06:43 - Ingemar Axelsson

Det var jag som ändrade till Manad med tanke på functionen month(now()) så därför andrade jag till manad men det står längre upp att jag ändrade

MVH Ingemar A


Svara

Sv:Databas och datum

Postades av 2005-05-12 22:05:57 - Göran Andersson

> vad säger att han vill addera på ett i både In och Out samtidigt?

Vad är det som säger att han ska använda koden rakt av utan att modifiera den efter vad han behöver göra?


Svara

Nyligen

  • 18:37 Remove the bumper in AUDI
  • 15:35 Chicken road crash game
  • 21:41 Automotive Services UK
  • 20:44 Erfarenhet av CBD-olja mot sömnpro
  • 12:13 Sex Dolls for Sale
  • 19:42 Online Casinos for Haitian Players
  • 19:38 Rekommendera något intressant
  • 19:13 Международная перевозка грузов

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 889
27 965
271 778
651
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies