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


Summera värden

Postades av 2001-11-13 22:50:00 - Mikael Strömberg, i forum asp - allmänt, Tråden har 4 Kommentarer och lästs av 902 personer

Hejsan!!!

Jag uppdaterar en databas med 3 st olika värden. (se koden nedan)
Frågan är att jag skulle vilja summera dessa 3 värden och uppdatera
databasen med summan av dessa värden i en separat kolumn?

Är det någon som kan lösa det på ett smidigt sätt?


Tack på förhand!
/Micke

----------------------------------
<% response.buffer = true %>

<%
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../fpdb/avvikelse.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open strDSN
%>


<%

sql = "UPDATE avvikelserapport SET arbkost = '" & request.form("arbkost") & "'"

sql = sql & ", matkost= '" & request.form("matkost") &"'"
sql = sql & ", ovrkost= '" & request.form("ovrkost") &"'"

sql = sql & "WHERE id = " & request("id")

Set rs = Conn.Execute (sql)
Conn.Close

%>

<% response.redirect ("atgarda_bekraftelse.asp")%>
----------------------------------------


Svara

Sv: Summera värden

Postades av 2001-11-14 08:00:00 - Daniel Albertsson

Testa såhär....

Dim Summa
Summa = val(request.form("arbkost")) + val(request.form("matkost")) + val(request.form("ovrkost"))

sql = "UPDATE avvikelserapport SET arbkost = '" & request.form("arbkost") & "'"

sql = sql & ", matkost= '" & request.form("matkost") &"'"
sql = sql & ", ovrkost= '" & request.form("ovrkost") &"'"
sql = sql & ", summa= '" & Summa &"'"

sql = sql & "WHERE id = " & request("id")


Svara

Sv: Summera värden

Postades av 2001-11-14 08:39:00 - Emma Magnusson

Varför vill du ha summan i databasen?

Om du läser på om normalformerna (http://databases.about.com, tror
jag att det är - den finns under databas-rubriken om inget annat...) så
är ett av tabuna att inte ha redundanta data, dvs data som går att få
fram på annat sätt. En summering är därför bättre att göra i en query
vid de tillfällena man behöver den - på så sätt vet man att man alltid
får det aktuella datat. Det är lätt hänt att glömma uppdatera ett fält
nämligen.

/Emma


Svara

Sv: Summera värden

Postades av 2001-11-14 09:14:00 - Pontus Wång

Emma, du har helt rätt ang. att man inte BÖR lagra redundanta data i en databas, skillnaden mellan bör och ska är tyvärr ganska stor..

Man kan tjäna extremt mycket prestanda på att lagra redundant data i en databas om databasen används för mycket läsning och lite uppdatering. Man kan också tjäna prestanda på att bryta andra normaliseringsregler, naturliga nycklar är inte alltid det optimala sättet att lagra information på ur prestandasynpunkt.

Exempel (ett teoretiskt exempel):
Du har ett många till många förhållande mellan personer och adresser, detta gör att hela adressen (låt oss säga sju fält) är unik och därför är lämplig som nyckel, personen är också unik (på låt oss säga personnummer som är lagrat som varchar). Förhållandet byggs då med med åtta stycken alfanumeriska fält och det är ju uppenbart att det inte är bra då man lika gärna kunde använda två stycken ID-kolumner (numeriska) som nycklar och sätta unika index på de naturliga nyclarna. Två numeriska värden går nämligen snabbare för datorn (databasservern) att tyda av och koppla med och på så sätt har du en ökning i prestanda som är mycket märkbar.

Vad det gäller redundant data så kan man ta exemplet med sammansatta namn. I ett CRM-system lagras oftast information som förnamn, efternamn och företagsnamn lagras i varsin kolumn i samma tabell, men du vill kunna söka efter förnamn, efternamn och företag i ett sökfält. Detta gör att det enklaste och snabbaste sättet att lösa detta problem på är att dubbellagra dessa värden sammanslaget i en kolumn för att slippa skriva en avancerad söklogik.


Svara

Sv: Summera värden

Postades av 2001-11-14 10:35:00 - Mikael Strömberg

Tack Daniel för tipset.

Men jag fick inte det att funka.
När ja skrev så här fick jag felmeddelande.

Dim Summa
Summa = val(request.form("arbkost")) + val(request.form("matkost")) + val(request.form("ovrkost"))

Inkompatibla typer: 'val'

Och då tog jag bort "val" men fick då felmeddelande.

Dim Summa
Summa = (request.form("arbkost")) + (request.form("matkost")) + (request.form("ovrkost"))

Microsoft OLE DB Provider for ODBC Drivers fel '80040e57'

[Microsoft][Drivrutin för ODBC Microsoft Access]Numeriskt värde utanför intervallet (null)

Vad kan detta vara för fel?

/Micke


Svara

Nyligen

  • 14:16 Indian online casino
  • 14:15 Indian online casino
  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online

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 845
27 961
271 763
549
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