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


fråga om astrix (* )

Postades av 2005-04-01 18:49:25 - Nina Ringbom, i forum access, Tråden har 7 Kommentarer och lästs av 717 personer

Hej
har en fråga:
Benny Svensson skrev så här i ett annat inlägg:

"Först en rekommendation, skriv inte astrix (* ).
Det är bättre att specifisera de fält som du vill använda dig av.
Det tar mindre prestanda ifrån servern, som då slipper att leta efter vad som finns i tabellen."

Har funderat lite på det. Om man skall ha ALLA posterna som finns i en databas, skall man i allafall skriva "tabellen.fornamn, tabellen.efternamn" osv... eller kan man då skriva * ??

//bara nyfiken



Svara

Sv: fråga om astrix (* )

Postades av 2005-04-01 18:51:21 - Per Persson

Om du skall ha alla, kan du gott skriva *. Men gör det inte av ren lathet om du har en tabell med många fält, men bara skall ha ett par stycken av dem.

För övrigt heter det "asterisk".


Svara

Sv:fråga om astrix (* )

Postades av 2005-04-01 18:53:42 - Nina Ringbom

Tack Per då vet jag!

(jag kopierade "astrix (*)" direkt av Benni Svenssons inlägg ;-)


Svara

Sv: fråga om astrix (* )

Postades av 2005-04-01 19:36:49 - Mikael Åhlén

Hej,

Sedan vet jag inte om detta är sant eller falskt, men när man ger fältets index i sql-satsen eller i tabellen så ger det bättre prestanda istället när man skriver mittFält i ex. en DataReader (minDataReader["mittfält"])

Är det sant eller falskt?

/m


Svara

Sv:fråga om astrix (* )

Postades av 2005-04-01 20:27:56 - Per Hultqvist

Jag hörde samma sak på en konferens i Amsterdam. Detta gällde då VB6 och ADO, och troligen stämmer det fortfarande, men jag tror inte skillnaden är lika stor idag. Jag inbillar mig att implementationen är bättre nuförtiden.

Sen kan man ju ha en hel del synpunkter på det vettiga i att skriva så, hårdkodade siffror för kolumnerna är ju ingen höjdare. Skulle någon skriva om SQL-satsen eller SP:n (ändra ordningen på fälten) så kan det ju bli hejdlöst fel.


Svara

Sv:fråga om astrix (* )

Postades av 2005-04-02 10:56:32 - Martin Adrian

>Sedan vet jag inte om detta är sant eller falskt, men när man ger fältets index i sql-satsen eller i tabellen så ger det >bättre prestanda istället när man skriver mittFält i ex. en DataReader (minDataReader["mittfält"])

Skillnaden är obetydlig. Tiden det tar att hämta data från databasen är många gånger större än tiden det tar att leta upp ett fältnamn. Att använda index är en suboptimering som bara gör koden svårare att underhålla.

Jag har tagit för vana att köra en profiler på mina applikationer för att se var tiden spenderas. I nästan samtliga fall så är det bara några få % som spenderas i den kod jag skrivit. Även om index är något snabbare än sträng så märks det inte i slutändan.

Kan inte påstå att jag sett någon större skillnad mellan att använda * mot att ange fältnamnen men jag sällan särskilt många fält i mina tabeller. Det är vikigare att se till att begränsa antalet rader i resultatet av sql-satsen.


Svara

Sv: fråga om astrix (* )

Postades av 2005-04-03 08:43:30 - Mikael Wedham

En MYCKET intressant grej är att kolumnerna inte kommer i rätt ordning om man skriver *.

Om klienten anropar med (t.ex.) Fields(2), så kan man få väldigt roliga fel.

Jag jämför nu OLEDB för SQL Server 2000 och OLEDB för Access. Klienten är Query Analyzer för SQL 2000

Select * from SQL Server ger kolumnerna i den ordning de skapats(eller modifierats) i SQL Server.
Select * from Access ger kolumnerna i bokstavsordning.

Kolumnlista specificerad ger ALLTID rätt = samma ordning

/micke


Svara

Sv: fråga om astrix (* )

Postades av 2005-04-04 17:28:46 - Göran Andersson

Det finns flera poänger med att inte använda "select *".

:: Även om du just nu hämtar alla fält som finns i tabellen, så kanske du lägger till fält i tabellen i framtiden, och då kommer du att hämta de fälten i onödan. Oftast märks knappt detta extrajobb, men å andra sidan så är det enklaste sättet att optimera kod att se till att man inte gör en massa saker i onödan.

:: Om fälten står i frågan så behöver man inte titta efter i databasen för att se vilka fält som kommer att hämtas av frågan. Koden blir mer självdokumenterande.

:: Ifall du plockar bort eller döper om något fält i tabellen utan att ändra koden, så kommer du att få ett felmeddelandet direkt när du kör frågan, istället för när du försöker läsa ut datat ur recordsetet. Ifall fältet dessutom bara användes ibland, så kommer du att få ett fel som bara uppträder ibland, vilket inte är det lättaste att felsöka.


Svara

Nyligen

  • 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
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

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 770
27 960
271 761
497
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