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


RS.Close eller inte

Postades av 2002-10-08 15:45:09 - Krister Eriksson, i forum visual basic - allmänt, Tråden har 9 Kommentarer och lästs av 454 personer

Skall man använda RS.Close när man hämtat data med
Set RS=Conn.Execute(" SQLFråga ") eller bara om man öppnar recordsetet med RS.Open?

RS=Recordset

/Krister


Svara

Sv: RS.Close eller inte

Postades av 2002-10-08 15:47:49 - Andreas Hillqvist

Du ska använda det i båda fallen.

Om det inte är så att Execut metoden inte retunerar något recordset. T.ex: Insert, Update eller Delete fråger. Då får man tillbakse ettt stäng recordset och att anropa Close ger då ett fel.


Svara

Sv: RS.Close eller inte

Postades av 2002-10-08 16:03:15 - Krister Eriksson

Jag bugar och tackar

En undran bara. Om jag använder det i en loop, måste jag då stänga det och öppna det för varje fråga?

//Krister


Svara

Sv: RS.Close eller inte

Postades av 2002-10-08 16:10:49 - Krister Eriksson


Om jag t.ex gör så här

Set RS1=Conn.Execute("SQLFråga")

Do until RS1.EOF
Set RS2=Conn.Execute( SQLFråga med resultat från RS1 )
...
....
.....
RS1.MoveNext
Loop


Svara

Sv: RS.Close eller inte

Postades av 2002-10-08 16:46:52 - Andreas Hillqvist

Gör en Join i första frågan och skipa det andra recordsettet. Mycket snabbare. Om du inkluderar hela din kod kanske vi kan hjälpa dig skriva frågan. <br>
<br>
Annars föreslår jag att du inte använder Execut eftersom den skapar ett nytt recordset i varje loop. Utan detta är ett tillfälle för Open metoden:
<code>
Set RS1=Conn.Execute("SQLFråga")
Set RS2 = New ADODB.Recordset

Do until RS1.EOF
RS2.Open "SQLFråga med resultat från RS1", conn
'.
'..
'...
RS2.Close
RS1.MoveNext
Loop
</code>


Svara

Sv: RS.Close eller inte

Postades av 2002-10-09 10:00:44 - Krister Eriksson

OK Så här ser koden ut för närvarande.


<code>

Private Sub cmdOrder_Click() '******** Sök på ordernummer
On Error Resume Next
Dim antal As Integer, artikelnr As String
Dim adoOrder As ADODB.Recordset
Dim index As Integer, index2 As Integer
index2 = 0
Set adoOrder = ADOCn.Execute("SELECT ordernr, artserienr, ( SELECT COUNT( * ) FROM Hh WHERE ordernr=" & txtOrdernr & ") AS Antal FROM Hh WHERE ordernr=" & txtOrdernr)
antal = adoOrder.Fields("Antal")
If antal > 0 Then
For index = 1 To antal
artikelnr = Trim(adoOrder!artserienr)
If Len(artikelnr) = 14 Then ' ** KONTROLL OM ATRIKELNUMMRET INNEHÅLLER 14 SIFFROR
Set adoTii = ADOCn.Execute("SELECT artnr, ArtBeskr, ArtBeskrSpec FROM ar where Artnr='" & Left(artikelnr, 5) & "'")
index2 = index2 + 1
ListView1.ListItems.Add index2, , adoTii!artnr
If Not IsNull(adoTii!ArtBeskr) Then
ListView1.ListItems(index2).SubItems(1) = adoTii!ArtBeskr
End If
If Not IsNull(adoTii!ArtBeskrSpec) Then
ListView1.ListItems(index2).SubItems(2) = adoTii!ArtBeskrSpec
End If
ListView1.ListItems(index2).SubItems(3) = artikelnr
ListView1.ListItems(index2).SubItems(4) = Combo2.Text
ListView1.ListItems(index2).Tag = Mid(artikelnr, 6, 6)

If antal >= 1 Then
ListView1.ListItems(index).SmallIcon = 11
End If
End If
adoOrder.MoveNext
Next index
adoTii.Close
Call AntalElement
End If
adoOrder.Close

End Sub

</code>


Svara

Sv: RS.Close eller inte

Postades av 2002-10-09 11:56:50 - Andreas Hillqvist

ÄR väldigt svårt att se vad dui försöker åstakomma. Man har gjort lite förändringar som jag tror fungerar:
<code>
Private Sub cmdOrder_Click() '******** Sök på ordernummer
Dim antal As Long
Dim artikelnr As String
Dim adoOrder As ADODB.Recordset
Dim index As Long
Dim ListItem as ListItem
Dim ListItems as ListItems
On Error Goto cmdOrder_Click_Err
Set ListItems = ListView1.ListItems
Set adoOrder = ADOCn.Execute("SELECT Hh.ordernr, Hh.artserienr, ar.artnr, ar.ArtBeskr, ar.ArtBeskrSpec" & vbCrLf & _
"FROM Hh LEFT JOIN ar ON ar.Artnr=Left(Hh.artikelnr, 5)" & vbCrLf & _
"WHERE Len(artserienr)=14 AND ordernr=" & txtOrdernr)
Do Until adoOrder.EOF
artikelnr = Trim(adoOrder!artserienr)
Set ListItem = ListItems.Add( , , adoTii!artnr)
ListItem.SubItems(1) = "" & adoTii!ArtBeskr
ListItem.SubItems(2) = "" & adoTii!ArtBeskrSpec
ListItem.SubItems(3) = artikelnr
ListItem.SubItems(4) = Combo2.Text
ListItem.Tag = Mid(artikelnr, 6, 6)
If antal >= 1 Then
ListItem.SmallIcon = 11
End If
Call AntalElement
adoOrder.MoveNext
Loop
adoOrder.Close

cmdOrder_Click_Exit:
Exit Sub

cmdOrder_Click_Err:
Msgbox Err.Description
Resume cmdOrder_Click_Exit
End Sub
</code>


Svara

Sv: RS.Close eller inte

Postades av 2002-10-09 14:11:42 - Krister Eriksson

Fungerade suveränt efter justering :-))

/Krister


Svara

Sv: RS.Close eller inte

Postades av 2002-10-09 21:28:50 - Andreas Hillqvist

ÄR inte säker på vad du ville åstakomma med Antal.


Svara

Sv: RS.Close eller inte

Postades av 2002-10-10 11:02:47 - Krister Eriksson

Antal behövs egentligen inte i detta fallet. Jag hade bara klippt och klistrat in en del av koden från ett annat ställe i programmet som i princip gjorde samma sak men där behövde jag veta antalet.. har tatt bort det nu.
Tack än en gång för hjälpen

//Krister


Svara

Nyligen

  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe
  • 20:22 Spel
  • 17:07 Snabb och trevlig webbplats utan l
  • 17:00 Bra spelsajt med bonusar
  • 15:51 Slappna av
  • 15:17 Onlineunderhållning på fritiden
  • 11:13 Online Kasino

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 569 670
27 955
271 723
3 842
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